当前位置: 技术问答>java相关
看看会输出什么?结果是equal b,==在string里不是比较两个串是不是相等嘛?
来源: 互联网 发布时间:2015-04-30
本文导语: public class aa{ public static void main(String[] args){ String s=new String("computer"); if (s=="computer") System.out.println("Equal a"); if (s.equals("computer")) System.out.println("Equal b"); } } | 因为你是用 new...
public class aa{
public static void main(String[] args){
String s=new String("computer");
if (s=="computer")
System.out.println("Equal a");
if (s.equals("computer"))
System.out.println("Equal b");
}
}
public static void main(String[] args){
String s=new String("computer");
if (s=="computer")
System.out.println("Equal a");
if (s.equals("computer"))
System.out.println("Equal b");
}
}
|
因为你是用 new 实例对象s,所以"=="是比较对象名(即指针),如果你用
String s = "computer"; 声明,则结果是:
Equal a
Equal b
String s = "computer"; 声明,则结果是:
Equal a
Equal b
|
对于类都要用equals,
基本数据类型才能用==
基本数据类型才能用==
|
==比较是否为同一个对象,
而equal比较值是否相同
而equal比较值是否相同
|
String里面被override的是==
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。