常用类String类的简介
代码:
String s1="monkey1024";
String s2="monkey1024";
s1="good"
System.out.println(s1);
System.out.println(s2);
结果:
good;
monkey1024;
在这里我们要注意一点,String是被final常量修饰的所以也就是不可改变了,在我们s1=good的时候,其实就是又重新在常量值分了一点空间,然后把s1指向那个新的空间,在这里新的空间指的就是good。
在上面代码中,创建s1的时候,jvm会在常量值中创建一个monkey1024字符串对象,在创建s2的时候,jvm回去常量值里搜索,如果有monkey1024,所以就不用创建了,直接让s2的monkey指向最开始s1的monkey1024的常量值就可以了,当给s1重新赋值的时候其实不是把monkey1024这个常量值的一块空间改成了good,而是在常量池的里面重新开辟了一片空间,里面专门放我们这个good的量,图:
字符串两种语法:
String a="你好,java"; String b=new String("你好,Java");
注意事项:
尽量不去频繁的使用字符串拼接操作,因为只要有一个String就会开辟出一个新的空间,这样太浪费空间了,偶尔的拼接一两个是可以的,但是如果使用频繁了,就有点浪费内存空间了,如果字符串和int类型进行拼接,那么系统会自动把int类型转换成字符串的类型