编程语言
首页 > 编程语言> > Java基础(7) | String

Java基础(7) | String

作者:互联网

# 创建方式3+1

3种构造方法:

String()
String(char[] array)
String(byte[] array)
1种直接构造
String str = "Hello"

# 构造方法及比较代码演示

package com.leerep.javabase.string;
/*
 * String对象一旦创建不可改变
 * 字符串效果上相当于char[]数组,底层实现采用byte[]数组
 * */

//3种构造方法:
//        > String()
//        > String(char[] array)
//        > String(byte[] array)
// 1种直接构造:
//        > String str = "Hello"

//对于基本类型, == 比较的是数值
//对于引用类型, == 比较的是地址值
public class FirstBlood {
    public static void main(String[] args) {
        //3种构造方法
        String str1 = new String();     //空串
        String str2 = new String(new char[]{'A', 'B', 'C'});
        String str3 = new String(new byte[]{97, 98, 99});

        System.out.println(str1);
        System.out.println(str2);
        System.out.println(str3);

        //直接创建
        String str4 = "Hello";
        System.out.println(str4);

        //创造方法比较
        String str5 = "World";      //直接写上双引号的字符串在字符串常量池中
        String str6 = "World";
        String str7 = new String(new char[]{'W','o','r','l','d'});
        /*
        * 对于基本类型, == 比较的是数值
        * 对于引用类型, == 比较的是地址值
        * */
        System.out.println(str5==str6);
        System.out.println(str5==str7);
        System.out.println(str6==str7);

        //比较内容使用equals方法
        System.out.println(str5.equals(str6));
        System.out.println("World".equals(str6));

        str7 = null;
        System.out.println(str7.equals("World"));       //错误写法 会报空指针异常

        //忽略大小写的比较
        String str8 = "world";
        System.out.println(str8.equalsIgnoreCase(str6));
    }
}

标签:Java,String,基础,System,str6,println,new,out
来源: https://www.cnblogs.com/leerep/p/14381245.html