目录
第一节 什么是JAVA中的字符串
在JAVA中,字符串被作为String类型的对象来处理,String类位于java.lang包中,默认情况下该包被自动导入左右的程序。
创建String对象的方法:
String s1="imooc";//创建一个字符串对象“imooc”为s1引用
String s2=new String();//创建一个空字符串对象为s2引用
String s3=new String("imooc");//创建一个字符串对象“imooc”为s3引用
每次new即代表是一个新的对象。
第二节 JAVA中字符串的不变性
String对象创建后不能被修改,是不可变的。所谓的修改其实是创建了新的对象,所指向的内存空间不同。
String s1="爱慕课";
String s2="爱慕课";//多次出现的字符常量,JAVA编译程序只创建一个。
String s3=new String("爱慕课");
String s4=new String("爱慕课");
s1==s2;true,两者的引用指向同一个对象。
s1==s3;false,两者是不同的对象。
s3==s4;false,两者是不同的对象。
s1="欢迎来到"+s1;字符串s1修改,指向新的内存空间。
需要了解的是:
1.在创建s1字符串时,声明了一个字符串对象, s1存放了到字符串对象的引用,然后通过s1="欢迎来到"+s1;改变了字符串s1,其实质是创建了新的字符串对象,变量s1指向了新创建的字符串对象。
2.一旦一个字符串在内存中创建,则这个字符串将不可改变,如果需要一个可以改变的字符串,我们可以使用StringBuffer或者StringBuilder。
3.每次new一个字符串就是产生一个新的对象,即便两个字符串的内容相同,使用“==”比较时也为false,如果只需比较内容是否相同,应该使用equals()方法。