黑马程序员技术交流社区
标题:
两个String字符串创建方法的区别?
[打印本页]
作者:
yaolv7
时间:
2016-4-9 22:43
标题:
两个String字符串创建方法的区别?
String s1 = new String("hello");
String s2 = "hello";
打印出来不都一样么,有什么区别???
作者:
1833495284
时间:
2016-4-9 22:59
顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
作者:
wanbing522
时间:
2016-4-9 23:00
存储的位置不一样,地址值不一样
作者:
yaolv7
时间:
2016-4-9 23:01
wanbing522 发表于 2016-4-9 23:00
存储的位置不一样,地址值不一样
有啥不一样能说清楚点儿么{:3_65:}
作者:
suiyanxin
时间:
2016-4-9 23:16
顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
作者:
lmr1096200234
时间:
2016-4-9 23:28
String s1 = new String("hello");\
这是new出来的String对象 存储的是地址值
String s2 = "hello";
这个是字符串 存储的是值
作者:
wanbing522
时间:
2016-4-14 08:09
是的给力黑马兄弟们
作者:
lvlup200
时间:
2016-4-14 08:34
两者一样的, 第二种方式只有String类才能用, 其他类都是不能这样使用的, 你只要知道就行了, 底层是JVM帮你完成的
作者:
lvlup200
时间:
2016-4-14 08:38
抱歉, new 出来的对象存储在堆内存中, 而直接赋值的字符串存放在常量池中, 两者有这点差别, 但是使用起来都是一样的
作者:
lixianglei
时间:
2016-4-14 10:27
结果一样 只是过程不一样
作者:
604840337
时间:
2016-4-14 10:31
一个是有可能在常量池拿出来 不用创建对象 另一个是创建了一个对象 然后调用常量池里的东西 存储位置不同
当然常量池不存在这个值 那么则在创建一个对象
语言组织不好 愿君理解
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2