常用类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类型转换成字符串的类型

posted @ 2020-01-06 09:32  晚灯  阅读(242)  评论(0编辑  收藏  举报