前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >面试题53(考察求职者对String声明变量在jvm中的存储方法)

面试题53(考察求职者对String声明变量在jvm中的存储方法)

作者头像
Java学习
发布2018-04-17 17:36:32
1.6K0
发布2018-04-17 17:36:32
举报
文章被收录于专栏:java学习java学习

(单选题) 1、有如下一段代码,请选择其运行结果()

public class StringDemo{

private static final String MESSAGE="taobao";

public static void main(String [] args) {

String a ="tao"+"bao";

String b="tao";

String c="bao";

System.out.println(a==MESSAGE);

System.out.println((b+c)==MESSAGE);

}

}

A true true

B false false

C true false

D false true

考点:考察求职者对String声明变量在jvm中的存储方法

出现频率:★★★★★

【面试题分析】

String a="tao";

String b="bao";

String c="taobao";

a,b,c,都是存在字符串常量池中的;String d="tao" +"bao";也是存在常量池中,d的构造过程是现在常量池中先找是否有“taobao”这个字符长若有则直接引用改字符串 若没有则在字符长常量池中构造一个“taobao”类Stringe="tao"+"ba"+"o"; 现在字符串常量池中查找“taoba” 若有则直接引用 若没有则构造一个放在该池中,然后在判断是有“taobao”过程和前面一样至于String f=a+b;实际等效于 Stringf=newString("taobao");存在在堆内存中 所以不相等

所以参考答案是 (C)

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档