java中的string类中内容一旦被初始化就不能改变为什么还有replace方法呢?

 我来答
闻痴琦藻
2019-08-16 · TA获得超过3万个赞
知道小有建树答主
回答量:1.1万
采纳率:30%
帮助的人:907万
展开全部
朋友,你好,对于你的问题,我觉得下面的回答您会满意明了:
string类对象中的内容一旦被初始化就不能再改变
没错的,这是string类的特性,一定要记住。
下面举个例子:
string
s
=
"hello";
//这时候会在内存中开辟一块空间存储“hello”,并且s的引用指向它;
s
=
“world”;
//看这句,初学者一般觉得这样的话s的值就变了啊,跟string的特性相违背了啊,其实并不然,s只是对象的引用,真正的对象存在了内存中,执行这句语句的时候,会在内存中重新开辟一块内存,用来存储“world”,并将原来的s引用指向“world”。但是原来的内存中的“hello”并没有改变。也就是说string类对象中的内容一旦被初始化就不能再改变。
希望您会看明白。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
召淳独吟
2019-05-24 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:36%
帮助的人:580万
展开全部
replace方法并不能改变字符串本身的,只是replace方法能返回一个处理后的字符串而已,例如:
String
s="hello";
System.out.println(s.replace("h","H"));
System.out.println(s);
输出结果:
Hello
hello
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式