社区
不良使(移动开发者社区)
交流讨论
帖子详情
String a = “a“ + new String(“b“) 创建了几个对象?
leo&ZOOM
2023-10-18 18:57:19
String a = “a“ + new String(“b“) 创建了几个对象?
...全文
266
回复
打赏
收藏
String a = “a“ + new String(“b“) 创建了几个对象?
String a = “a“ + new String(“b“) 创建了几个对象?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
44、
String
a = “a“ +
new
String
(“b“)
创建
了
几个
对象
?
小景哥哥博客
String
a = “a” +
new
String
(“b”)
创建
了
几个
对象
? 常量和常量拼接仍是常量,结果在常量池,只要有变量参与拼接结果就是变量,存在堆。 使用字面量时只
创建
一个常量池中的常量,使用
new
时如果常量池中没有该值就会在常量池中新
创建
,再在堆中
创建
一个
对象
引用常量池中常量。因此
String
a = "a" +
new
String
("b") 会
创建
四个
对象
,常量池中的 a 和 b,堆中的 b 和堆中的 ab。 ...
new
String
时到底
创建
了
几个
对象
String
的考点 问题一:
String
a = “a” + “b” + “c”;
创建
了
几个
对象
答案:一个
对象
javac编译可以对字符串常量直接相加的表达式进行优化,不必要等到运行期去进行加法运算处理,而是在编译时去掉其中的加号,直接将其编译成一个对应常量相连的结果。 问题一:
String
s = “aaa” +
new
String
(“bbb”);
创建
了
几个
对象
答案:4个
对象
“aa” 是一个
对象
new
Sring() 是一个
对象
"bbb"是一个
对象
“aa” +
new
new
String
a=
new
String
("b","c")会
创建
几个
对象
?
String
a=
new
String
("b","c")会
创建
几个
对象
?
String
a=
new
String
("b"+"c")又会
创建
几个
?为什么? 1.
String
a=
new
String
("b"+"c"); b一个 c一个 b+c一个 a一个 总共四个 1、Java中
New
出的
对象
则始终被JVM存放在堆中,
创建
的字串常量则始
从jdk1.8版本的jvm角度来理解
String
str = "a" + "b";
创建
了
几个
对象
前言 话不多说直接进入正题 一、三道面试题 Q1:如下代码一共
创建
几个
对象
?
String
str = "a" + "b"; A1:emmm,刷过面试题的肯定会这么回答:三个!因为
String
是final的,所以会
创建
"a", "b"两个
String
对象
以及一个str
对象
,它指向"ab"这一个字符串。我相信大多数人都是这么回答的,那么到底是不是呢?咱们以jdk1.8中jvm的角度来验证...
java
String
s1 =
new
String
("abc");与
String
s="a"+"b"+"c" ;分别
创建
了
几个
对象
1、
String
s1 =
new
String
("abc");
创建
两个
对象
,一个在常量池中,一个在堆内存中。 常量池属于方法区,先在常量池
创建
一个"abc",因为
new
String
(),所以需要在堆内存开辟空间。 2、
String
s="a"+"b"+"c" ;
创建
了
几个
对象
查看编译后的class文件,
String
s= "a"+"b"+"c";被编译成
String
s = ...
不良使(移动开发者社区)
38,670
社区成员
440
社区内容
发帖
与我相关
我的任务
不良使(移动开发者社区)
你无法游向新的地平线,除非你有勇气告别海滩 专注Android+IOS+微信小程序 学习与问题解决,建造全网一流移动端问题解决社区 前后端文章也可以发哈
复制链接
扫一扫
分享
社区描述
你无法游向新的地平线,除非你有勇气告别海滩 专注Android+IOS+微信小程序 学习与问题解决,建造全网一流移动端问题解决社区 前后端文章也可以发哈
android
ios
微信小程序
个人社区
安徽省·合肥市
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章