A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 瑞雪雄起 中级黑马   /  2015-9-16 20:31  /  246 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

str0="123";
str1="123";
为什么str0==str1
解释:由于在对str0直接赋值的时候,首先会在字符缓存中查找是否存在"123"这个字符串,如果有,则直接把该字符串的索引赋值给str0,否则,创建(new)一个"123"的对象,然后将该字符串缓存起来,如果稍后有其他用到该字符串,则直接把该字符串的索引赋值给某个引用。如果用new 创建出来的两个字符串对象,如果用==的话结果为false,主要是比较对象在内存中的位置是否相等,显然两个对象的内存位置是不相等。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马