社区
Java SE
帖子详情
操作符“+”的定义,他是否是new了一个新的字符串?
caocongteng
2008-04-15 12:34:26
final String str1 = "length: 10";
final String str2 = "length: "+pig.length();
我现在可以确定str1==str2为false;
我知道String池的特性
但想知道连接操作符“+”的定义,他是否是new了一个新的字符串?还是什么?
望达人指点!
...全文
2009
72
打赏
收藏
操作符“+”的定义,他是否是new了一个新的字符串?
final String str1 = "length: 10"; final String str2 = "length: "+pig.length(); 我现在可以确定str1==str2为false; 我知道String池的特性 但想知道连接操作符“+”的定义,他是否是new了一个新的字符串?还是什么? 望达人指点!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
72 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhch152
2012-06-25
打赏
举报
回复
[Quote=引用 42 楼 的回复:]
为了加深理解,我们可以来做几个小实验。
javac Test 编译文件
javap -c Test 查看虚拟机指令
实验一:纯字符串
Java code
public class Test {
public static void main(String args[]) {
String str = "a";
}
}
//……
[/Quote]
//b 不是在常数池里面吗,这里的栈是指常数池了的栈吗? 还有复制出来,指的是复制到哪里??
codeshuo
2010-09-16
打赏
举报
回复
火龙果真可以啊。。。讲的这么本质!解了我心中的一个迷啊,谢谢了!!
lichao20073877
2010-07-17
打赏
举报
回复
mark
timeriver_wang
2010-03-09
打赏
举报
回复
受益匪浅啊,mark
cdsn09
2010-01-06
打赏
举报
回复
火龙果果然很强大
wifewifewife
2009-11-02
打赏
举报
回复
mark..
monsterfairy
2009-10-14
打赏
举报
回复
[Quote=引用 5 楼 caocongteng 的回复:]
我理解错了
String str1 = "haha";
String str2 = "ha"+"ha";
System.out.println(str1==str2);
返回true;
说明 + 操作符并没有生成新的对象,问题在str1.length()这里
大家都说说吧!
[/Quote]
String str1 = "haha"; //这里在编译期时就放到了池子里
String str2 = "ha"+"ha"; // 这里会先拼成"haha" 然后去池子里找,如果找到了,就用,如果找不到,就new(分配内存)个新的,放入池中。
这里能找到,所以下面这句为True
System.out.println(str1==str2); //true 除了名字不一样外,其他都一样(内存地址)所以返回true
String s1 = "ha" //这里同理也会到池里找,没有new一个新的放到池里,这里会放一个ha到池里。
String s2 = "ha" //这里找,有,用池里的,同时s1,s2引用相同地址,除了名字不一样外,其他都一样
final String str1 = "length: 10"; // 没有,放到池里。
以上都在编译期做的事情,常量,会放到池子里。
final String str2 = "length: "+str1.length(); //这里不是在编译期做的事情,是存在Heap中的。
str1 和 str2 引用不同的地址,new一个"length: "+str1.length()放到Heap中,并用str2指向新地址。
monsterfairy
2009-10-14
打赏
举报
回复
String str1 = "haha";
String str2 = "ha"+"ha";
System.out.println(str1==str2);
leafin
2009-03-06
打赏
举报
回复
marked by leafin
luojihaidao
2009-02-05
打赏
举报
回复
不错!
lyx_0010
2009-02-04
打赏
举报
回复
学习
bigbro001
2009-01-13
打赏
举报
回复
记号。。。
sjbtwo
2008-12-24
打赏
举报
回复
太强大了。。。学习。。。。感觉收益很大。。
FranklinKing
2008-12-23
打赏
举报
回复
还是有些迷糊
jlabel
2008-12-22
打赏
举报
回复
已阅
Neves_pa
2008-12-22
打赏
举报
回复
好帖子,该顶
hl_ghost
2008-11-22
打赏
举报
回复
mark
clwahaha
2008-11-01
打赏
举报
回复
[Quote=引用 53 楼 lwyx2000 的回复:]
火龙果很强大也很好吃~~~
[/Quote]
呼呼
「已注销」
2008-10-15
打赏
举报
回复
mark
lwyx2000
2008-10-07
打赏
举报
回复
火龙果很强大也很好吃~~~
加载更多回复(51)
基于YOLO_V2目标检测算法在津南数字制造挑战赛数据集上的训练与优化实现_包含VOC预训练模型迁移学习本地验证离线测试及AP指标分析_用于工业制造场景中的缺陷检测与物体识别提升模.zip
基于YOLO_V2目标检测算法在津南数字制造挑战赛数据集上的训练与优化实现_包含VOC预训练模型迁移学习本地验证离线测试及AP指标分析_用于工业制造场景中的缺陷检测与物体识别提升模.zip
基于Web的富文本编辑器组件_CKEditor4开源项目_提供所见即所得编辑功能_支持HTML格式编辑与实时预览_集成图片上传与媒体嵌入_包含代码高亮与表格工具_具备剪贴板操作与格.zip
基于Web的富文本编辑器组件_CKEditor4开源项目_提供所见即所得编辑功能_支持HTML格式编辑与实时预览_集成图片上传与媒体嵌入_包含代码高亮与表格工具_具备剪贴板操作与格.zip
基于CWindows窗体开发的教务系统学生信息管理平台_学生信息管理_学生成绩管理_学生选课系统_管理员权限控制_课程开设与查询_成绩录入与统计_课表显示与查询_个人密码修改_.zip
基于CWindows窗体开发的教务系统学生信息管理平台_学生信息管理_学生成绩管理_学生选课系统_管理员权限控制_课程开设与查询_成绩录入与统计_课表显示与查询_个人密码修改_.zip
基于PaddleX22和PP-Yolo框架的完整目标检测模型训练加密与部署实践指南_深度学习计算机视觉目标检测模型训练模型加密模型部署PaddlePaddleYOL.zip
基于PaddleX22和PP-Yolo框架的完整目标检测模型训练加密与部署实践指南_深度学习计算机视觉目标检测模型训练模型加密模型部署PaddlePaddleYOL.zip
springboot北工国际健身俱乐部(代码+数据库+LW)
摘 要 本系统为会员而设计制作北工国际健身俱乐部,旨在实现北工国际健身俱乐部智能化、现代化管理。本北工国际健身俱乐部管理自动化系统的开发和研制的最终目的是将北工国际健身俱乐部的运作模式从手工记录数据转变为网络信息查询管理,从而为现代管理人员的使用提供更多的便利和条件。使北工国际健身俱乐部数字化、智能化,是提高工作效率的重要举措。 为了更好地发挥本系统的技术优势,根据北工国际健身俱乐部的需求,本文尝试以B/S经典设计模式中的Spring Boot框架,JAVA语言为基础,通过必要的编码处理、北工国际健身俱乐部整体框架、功能服务多样化和有效性的高级经验和技术实现方法,旨在完成
一个
快速、高效、便捷的北工国际健身俱乐部。本系统以会员与管理员两类人,作为目标会员,其中会员主要功能包含会员的注册与登录,查询
新
闻活动、健身课程、器械信息、健身资讯等,对账号相关信息的修改;管理员主要功能包括了会员、员工、教练、
新
闻活动、健身课程、课程查询、退课查询等;管理员可以实现最高权限级别的全系统管理, 关键字:北工国际健身俱乐部
Java SE
62,630
社区成员
307,264
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章