17、String类的构造方法

public class StringTest02 {
    
    
    public static void main(String[] args) {
    
    

        /*
        关于String类中最常见的构造方法
        第一个:String s = new String("");
        第二个:String s = "";  最常用
        第三个:String s = new String(char数组);
        第四个:String s = new String(char数组,起始下标,长度);
        第五个:String s = new String(byte数组);
        第六个:String s = new String(byte数组,起始下标,长度);
         */

        //创建字符串对象最常见的一种方式

        //s1保存的是一个内存地址
        //按理应该输出一个内存地址,但是结果是字符串,这说明String类重写了toString方法
        String s1 = "hello";
        System.out.println(s1);
        System.out.println(s1.toString());


        byte[] bytes = {
    
    97,98,99};  //97是a,98是b,99是c
        String s2 = new String(bytes);

        //在学习toString方法时提到,直接输出对象的话,会自动调用对象的内存地址
        System.out.println(s2);
        //表示String类已经重写了toString方法
        //输出的结果不是内存地址,而是字符串
        System.out.println(s2.toString());

        //结果是
        //abc
        //abc

        //String(字节数组,数组元素的下标起始位置,长度)
        //将byte数组的一部分转换为字符串
        String s3 = new String(bytes,1,2);
        System.out.println(s3);//bc

        //将char数组全部转换为字符串
        char[] chars = {
    
    '我','是','中','国','人'};
        String s4 = new String(chars);
        System.out.println(s4);
        //将char数组一部分转换为字符串
        String s5 = new String(chars,2,3);
        System.out.println(s5);

        String s6 = new String("helloworld!");
        System.out.println(s6);

        //我是中国人
        //中国人
        //helloworld!


    }
}

猜你喜欢

转载自blog.csdn.net/Alopecian/article/details/115282800