在java中布尔值赋值的有效方法是什么?

时间:2015-04-30 08:42:16

标签: java boolean variable-assignment

我们可以通过三种方式分配boolean

    boolean isDone;
    isDone = true;
    isDone = Boolean.valueOf(true);
    isDone = Boolean.TRUE;

那么哪个作业效率更高?

2 个答案:

答案 0 :(得分:7)

只有第一个不涉及任何装箱或拆箱。所以从表面上看,第一个是效率最高的。但是,大多数编译器(或即时编译器,如果存在)可能会优化其他两个分配,同样有效。

如果isDone被宣布为Boolean而不是boolean,那么故事会有所不同。在这种情况下,第三项任务将是我的偏好。

答案 1 :(得分:2)

最有可能的编译器和jit优化器无论如何都会优化所有这些,但最好的"最好的"理论上是第一个:isDone = true;,因为它不涉及boxing and unboxing