Boolean.valueOf()
との間でJava 1.5 autoboxing
作成するためのBoolean
より良い方法 booleans
とその理由はどれですか?
1318 次
1 に答える
14
のオートボクシングは、コンパイラによってboolean
透過的に変換されます。Boolean.valueOf()
boolean b = true;
Boolean bb = b;
に翻訳されます:
iconst_1
istore_1 //b = 1 (true)
iload_1 //b
invokestatic #2; //Method java/lang/Boolean.valueOf:(Z)Ljava/lang/Boolean;
astore_2 //bb = Boolean.valueOf(b)
より便利で読みやすいと思う方を使用してください。使用しBoolean.valueOf()
ても余分な入力以外は何も得られないため、オートボクシングを目指す必要があります。
Boolean
反対の変換、つまりからへの変換について考えると、状況は複雑になりますboolean
。この時間Boolean.booleanValue()
は、コンパイラによって透過的に呼び出されます。これにより、理論的にはが発生する可能性がありNullPointerException
ます。
于 2012-07-26T16:38:35.083 に答える