String 对象

String 对象


两种方式

方式一:直接使用双引号得到字符串对象

代码:

//方式一:直接使用双引号得到字符串对象
        String name = "我爱你中国!";


方式二:

1.public String():创建一个空白字符串对象,不含有任何内容 (几乎不用)

代码:

// 1.public String():创建一个空白字符串对象,不含有任何内容 (几乎不用)
        String s = new String();

2.public String(String):根据传入的字符串内容,来创建字符串对象(几乎不用)

代码:

// 2.public String(String):根据传入的字符串内容,来创建字符串对象(几乎不用)
        String s2 = new String("我是中国人"); //灰色表示可有可无

3.public String(char[] c):根据字符数组的内容,来创建字符串对象

代码:

// 3.public String(char[] c):根据字符数组的内容,来创建字符串对象
        char[] chars = {'a' , 'b' , '中' , '国'};
        String s3 = new String(chars);
        System.out.println(s3);

4.public String(byte[] b):根据字节数组的内容,来创建字符串对象

代码:

// 4.public String(byte[] b):根据字节数组的内容,来创建字符串对象
        byte[] bytes = {97, 98, 99, 65, 66, 67};
        String s4 = new String(bytes);
        System.out.println(s4);

区别:

区别一:

  • 以 "" 方式给出的字符串对象,在字符串常量池中存储,而且相同内容只会在其中存储一份。

区别二:

  • 通过构造器new对象,每new一次都会产生一个新对象,放在堆内存中。
    代码:
//区别一:
String ss1 = "abc";
        String ss2 = "abc";
        System.out.println(ss1 == ss2); //true
//区别二:
        char[] chars1 = {'a', 'b', 'c'};
        String ss3 = new String(chars1);
        String ss4 = new String(chars1);
        System.out.println(ss3 == ss4); //false
posted @ 2022-06-24 11:11  Haziy  阅读(59)  评论(0编辑  收藏  举报