黑马程序员技术交流社区

标题: 分享,精选30题Java笔试题解答03 [打印本页]

作者: heshiwei    时间: 2015-10-13 11:11
标题: 分享,精选30题Java笔试题解答03
3. 下面程序的运行结果是()

  1. String str1 = "hello";
  2. String str2 = "he" + new String("llo");
  3. System.err.println(str1 == str2);
复制代码




作者: hyzhw    时间: 2015-10-13 15:45
结果为false
如果把str1==str2写成str1.equals(str2),结果就为true
作者: heshiwei    时间: 2015-10-13 16:43
hyzhw 发表于 2015-10-13 15:45
结果为false
如果把str1==str2写成str1.equals(str2),结果就为true

是的,你是对的。
作者: 920792433    时间: 2015-10-13 16:55
                           false
作者: 抬头45°    时间: 2015-10-13 17:00
false谢谢分享
作者: hyzhw    时间: 2015-10-14 11:20
heshiwei 发表于 2015-10-13 16:43
是的,你是对的。

谢谢支持
作者: LLLLL    时间: 2015-10-14 11:27
。。。。。。。。。。。。。。。。。。。
作者: nightwish    时间: 2015-10-15 00:50
false,
因为new了对象,如果第二行代码为String str2="he"+"llo"则为true
java编译器可以对字符串常量直接相加的表达式进行优化,去掉加号直接相连
作者: ksh    时间: 2015-10-15 08:23
貌似false吧,,只要有new就重新分配内存了吧
作者: 小穿钉    时间: 2015-10-15 08:46
false   嗯哼
作者: 小穿钉    时间: 2015-10-15 08:47
30道题在哪里?
作者: liuqianfly    时间: 2015-10-15 09:56
谢谢分享
作者: ln0491    时间: 2015-10-15 10:25
看下。。。。。。。。。。。。
作者: 夕风秋凉    时间: 2015-10-18 12:45
False..................
作者: 苯小孩hehe    时间: 2015-10-22 00:08
顶                        
作者: xiaotiejiang    时间: 2018-3-7 22:15
sdfghjkfgfhtryuijkrtgyh




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