黑马程序员技术交流社区

标题: 关于==和equals()的区别! [打印本页]

作者: kkopopo    时间: 2014-1-20 20:57
标题: 关于==和equals()的区别!
==和equals()的区别
String tom = "I am student";
String jerry = "I am student";
tom == jerry ---------true;                                                            == 是看地址引用是否相同-------------引用 内存地址
tom.equals(jerry)-----true;                                                             equals是看对象内容-------------------实体 内存
String tom = new String("I am student");
String jerry = new String("I am stundet");
tom == jerry--------false
tom.equals(jerry)---true
作者: 程澄    时间: 2014-1-21 10:17
String tom = "I am student";     这个是字符串常量,存储在常量池中
String jerry = "I am student";    因为在常量池中已有,就不创建新的,直接从常量池中调用,所以一样

String tom = new String("I am student");
String jerry = new String("I am stundet");  只要new就是创建新对象,所以不一样




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2