String:字符串对象一旦初始化则不能被修改
String s = "abc"; s = "nba"; System.out.println(s);//结果为"nba" /* 这里其实是创建了两个对象,一个是“abc”,一个是"nba",变的是s的指向。在内存中"abc"依然存在 */ Strings1 = "abc";//指向s之前创建的"abc". /* 用String 变量名 = “字符串”;来初始化,字符串被存储在常量池中,每次初始化时,先去常量池中找,找得到就直接将变量指向那个字符串,没找到再创建,这就是String s = new String("...");的区别,因为后者直接在堆内存中创建了新对象 */
时间: 2024-12-23 19:15:40