String的相关知识

String:字符串对象一旦初始化则不能被修改

String s = "abc";
s = "nba";

System.out.println(s);//结果为"nba"

/*
这里其实是创建了两个对象,一个是“abc”,一个是"nba",变的是s的指向。在内存中"abc"依然存在
*/

Strings1 = "abc";//指向s之前创建的"abc".

/*
用String 变量名 = “字符串”;来初始化,字符串被存储在常量池中,每次初始化时,先去常量池中找,找得到就直接将变量指向那个字符串,没找到再创建,这就是String s = new String("...");的区别,因为后者直接在堆内存中创建了新对象
*/

 

 

posted @ 2016-04-28 18:20  生姜不爱蒜  阅读(122)  评论(0)    收藏  举报