java布尔类型变量bool,判断 true ==bool与bool==true区别
展开全部
这就好像int num=2;然后判断num==2或2==num,完全没区别,只是把两个对象换个位置比较,怎么比都是相同的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
【个人观点】:true ==bool与bool==true没有区别,判断bool是否为true可以直接用if(bool)而不需要if(bool==true)。
【结果】:
true: bool==true
true: true==bool
【测试代码】:
public calss Exam{
public static void main(String[] args){
boolean bool=true;
if(bool==true) System.out.println("true: bool==true");
if(true==bool) System.out.println("true: true==bool");
bool=false;
if(bool==true) System.out.println("false: bool==true");
if(true==bool) System.out.println("false: true==bool");
}
}
【结果】:
true: bool==true
true: true==bool
【测试代码】:
public calss Exam{
public static void main(String[] args){
boolean bool=true;
if(bool==true) System.out.println("true: bool==true");
if(true==bool) System.out.println("true: true==bool");
bool=false;
if(bool==true) System.out.println("false: bool==true");
if(true==bool) System.out.println("false: true==bool");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
从运算结果上来说呢,和楼上说的是一样,没有什么区别。
在这里有一个编程的习惯,在进行布尔值的运算的时候,
如果把常量写在“==”的左面,当你由于某种不可预知的失误,把“==”写成了“=”,那么编译器会报错,因为常量是不能被赋值的,这是我们这些初学者很容易犯得错误;
如果把变量写在“==”的左面,当你由于某种不可预知的失误,把“==”写成了“=”,那么编译器不会报错,因为编译器会认为这是一个赋值运算,而不是布尔运算。这个简单的错误可能会导致严重的后果,造成测试检查错误时费很大的力气也找不到错在哪里。
我想这就是判断 true ==bool与bool==true的区别吧!
在用quals方法判断两个字符串时,
如“abc”.equals(str);//str是个String变量
采用这种写法,就不会产生空指针异常。
在这里有一个编程的习惯,在进行布尔值的运算的时候,
如果把常量写在“==”的左面,当你由于某种不可预知的失误,把“==”写成了“=”,那么编译器会报错,因为常量是不能被赋值的,这是我们这些初学者很容易犯得错误;
如果把变量写在“==”的左面,当你由于某种不可预知的失误,把“==”写成了“=”,那么编译器不会报错,因为编译器会认为这是一个赋值运算,而不是布尔运算。这个简单的错误可能会导致严重的后果,造成测试检查错误时费很大的力气也找不到错在哪里。
我想这就是判断 true ==bool与bool==true的区别吧!
在用quals方法判断两个字符串时,
如“abc”.equals(str);//str是个String变量
采用这种写法,就不会产生空指针异常。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询