1. ホーム
  2. java

[解決済み] Boolean.parseBoolean("1") = false...?

2023-07-26 14:25:13

質問

ご迷惑をおかけして申し訳ありません。私は HashMap<String, String> o

o.get('uses_votes'); // "1"

まだ...

Boolean.parseBoolean(o.get('uses_votes')); // "false"

と推測されます。 ....parseBoolean は標準の 0 = false 1 = true ?

私は何か間違ったことをしていますか、私は私のコードをラップする必要があります。

boolean uses_votes = false;
if(o.get('uses_votes').equals("1")) {
    uses_votes = true;
}

ありがとうございます。

どのように解決するのですか?

の文字列値のみを受け付けます。 "true" という文字列で、ブーリアンである true . 一番良いのは

boolean uses_votes = "1".equals(o.get("uses_votes"));

あるいは、もし Map が実際にエンティティを表しているのであれば、私は Javabean の方がずっといいと思います。また、コンフィギュレーション設定を表すのであれば Apache Commons の設定 .