1 if(userName.equeals("xyz")){}
2 int x = 1;
return x==1:true?false;
------解决方案--------------------------------------------------------
第一个 equals 你写错了。 第二个应该是 return x==1?true:false;
------解决方案--------------------------------------------------------
第一个userName为空的时候,会出异常。
------解决方案--------------------------------------------------------
这编译都过不了吧
------解决方案--------------------------------------------------------
哦哦 ,以后看题小心点
------解决方案--------------------------------------------------------
- Java code
//1:这样写即使usernName是null,也不会报错。 if("xyz".equeals(userName)){}//2:这样就OK了,1 == x 本身就是boolean类型了。int x = 1;return 1 == x;
------解决方案--------------------------------------------------------
- Java code
1 if(userName.equeals("xyz")){} // if("xyz".equals(userName)),equals写错了,而且最好xyz写外面,这样能避免当userName为null时候的空指针异常. 2 int x = 1; return x==1:true?false; // return x==1?true:false; ?:顺序反了
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
教你一种变化
if(userName.equals("xyz")){} 也可以写成这样 if("xyz".equals(userName)){}
------解决方案--------------------------------------------------------
第一个userName为null时会抛空指针
第二个就是错的 应该return x==1?true:false;
或直接 return x==1;
------解决方案--------------------------------------------------------
很明显,三目运算符写错啦,应该是return x==1?true:false;
还有userName可能为空,也可能userName左右两边有空格,
userName.trime().equals("xyz")这样就好了。
------解决方案--------------------------------------------------------
一般将常量放前面,这样就不会报空指针异常
return x==1:true?false; 应该是?:
------解决方案--------------------------------------------------------
1 if("".equals(userName)){}
2 int x = 1;
return x==1?true:false;
------解决方案--------------------------------------------------------
唉。。。