日期:2014-05-20  浏览次数:20802 次

test() == true 和 true == test() 有什么区别?
假设一个方法

boolean test() {
    return true;
}


下面两个判断语句:

if(test() == true) {}


if(true == test()) {}


这个语句的效果肯定是一样的,但我听到过一种说法,其中某一种好一些,有没有知道这个的啊?
麻烦说说啊

------解决方案--------------------
if(true == test()) {}
这个用法好点,把常数写前面是好的编程方式

因为test()返回的有可能是null
假设你的判断语句是这样的if(test().equals("aa")) {}
如果这时候test()返回null,你的程序就会出错了
但是如果写成if("aa".equals(test())){}
就算test()返回null也不会出错哦