黑马程序员技术交流社区
标题:
字符串区别几种写法,简单记忆
[打印本页]
作者:
王会涛
时间:
2014-11-16 08:56
标题:
字符串区别几种写法,简单记忆
1.字符串时一个特殊的对象,字符串一旦被初始化,就不可以被改变;
(1)比较两种写法的区别:
String s1="abc";
String s2 = new String("abc");
s1在内存中是一个对象;
s2在内存中是两个对象;new是一个对象,“abc”是一个对象
(2)比较三种结果的区别:
String s1="abc";
String s2 = new String("abc");
String s3="abc";
s1==s2; false 原因:s1、s2是两个对象
s1.equals(s2); true 原因:String类复写了Equals方法,该方法判断字符串是否相同
s1==s3; true 原因:建立s1对象后,又建立一个s3,发现常量池中,已经有abc字符串,为了节约内存,直接把S3的引用指向和s1同一个对象;
作者:
王会涛
时间:
2014-11-16 09:00
一个记住:String s2=new String() 等效于String s = ""; 不等效String s = null;
作者:
cbb
时间:
2014-11-16 09:21
很有用~谢谢楼主分享经验~~
作者:
金福林
时间:
2014-11-16 09:57
谢谢楼主分享,很有用
作者:
暴君
时间:
2014-11-16 10:29
谢谢楼主分享,学到了
作者:
与梦逆风而行
时间:
2014-11-16 22:56
建议楼主把 == 和 equals比较的区别顺便加上。
作者:
迷失的小Z
时间:
2014-11-16 23:15
再重新赋值后为什么就不 == 了呢?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2