java – 将布尔值设置为false冗余?

我已经阅读了关于这个主题的几个先前提出的问题和答案[或非常相似],但他们都没有真正解决这一点.声明一个新的布尔变量时,它是多余的[例如不必要]将其初始化为false?
boolean selectedZone = false;

而不是宣布

boolean selectedZone;

我看过的其他帖子是
Why is Java’s default value for Boolean set to true?Default value of Boolean in java

解决方法

在大多数情况下,它是多余的.例外情况是它是一个局部变量,在这种情况下需要在使用之前进行初始化.例子:
class Example{
    boolean value1;//valid,initialized to false
    public void doStuff(){
        boolean value2;//valid,but uninitialized
        System.out.println(value1);//prints "false" (assuming value1 hasn't been changed)
        System.out.println(value2);//invalid,because value2 isn't initialized. This line won't compile.

关于此的一些文档:
https://web.archive.org/web/20140814175549/https://docs.oracle.com/javase/specs/jls/se5.0/html/typesValues.html#96595

即使变量已初始化,您仍可能希望显式声明其初始值.它可以使代码更清晰,让人们阅读代码时知道将其设置为该值是有意识的决定.

Related

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...