初学者:请大虾们帮我看一下==比较符为什么不好使呢??
class Test{
public static void main(String[] args){
if(args.length!=1){
return;
}
String s=args[0].trim();
System.out.println(s);
if(s== "good "){
System.out.println( "OK ");
}
else{
System.out.println( "ERROR ");
}
}
}
我在控制台输入的是good可是为什么打印的还是ERROR呢?
我把if(s== "good ")改成if(s.equals( "good "))就好使了,这是为什么呢,
[解决办法]
String是类......
[解决办法]
固定搭配
你记好了就可以了~
HOHO~~
[解决办法]
==是比较是否是同一块内存
equals是比较逻辑值
[解决办法]
crazycy(崔毅,blog:http://www.blogjava.net/crazycy/) ( ) 信誉:101 Blog 2007-01-21 22:33:33 得分: 0
==是比较是否是同一块内存
equals是比较逻辑值
===================================================================
高手都说了,我就不重复了
[解决办法]
好好去看看String里面的方法吧
[解决办法]
==比较的是内存地址
equals()比较内容
如果你和 "good "显然他们的地址不一样,所以为false
[解决办法]
String 是对象 对象比较用equals()比较 ==是值之间比较
[解决办法]
基础问题
[解决办法]
==比较的是内存地址
equals()比较内容
如果你和 "good "显然他们的地址不一样,所以为false
同意,同意!
String str= "aaa ";
String str= "aaa ";
这个可以用==
[解决办法]
你可以简单的认为,==是进行值比较,是对确切的值进行判断,而equals是进行字符比较