猿问

字符串问题

Java的字符串不是创建后就不能被修改的吗?为什么我下面贴出的程序,却可以修改,输出的是改变后的字符串的值,输出“s”
	public static void main(String[] args) {
		String s = "v";
		s = "s";
	
		System.out.println(s);
	
	}


fenkapian
浏览 1655回答 5
5回答

hornsey

你创建了两个字符串,一个是“v", 一个是"s",变量s先引用了第一个,后来又改成引用了第二个,结果就打印了最后引用的字符串,两个字符串都存在,都没有修过。

duliu1990

如下图所示:

损失函数

s是变量,你若重新给它赋值那当然能改变了。v这个字符串依旧存在,只是s对象在内存中已经指向“s”了。望采纳!
随时随地看视频慕课网APP

相关分类

Java
我要回答