Java基础之 字符串比较的三种方法

Java基础之字符串比较的三种方法
Java中字符串比较有三种方法,分别是:equeal、==和compareTo。
三种比较的内部逻辑是完全不同的,
equeal:比较的是内容,返回的true或false
==:比较的是字符串的地址,返回的true或false
compareTo:比较的是内容,返回的值是0,整数,负数(也就是字符串的差值)

知道了它们三个的特性,字符串比较你就能准确知道结果了,我们来看下面的demo:

/**
 * 字符串比较的三种方法
 */
public class TestString {

    public static void main(String[] args) {

        //字符串比较
        String ss1 = "itzhimei.com";
        String ss2 = "itzhimei.com";
        String ss3 = new String("itzhimei.com");
        String ss4 = new String(ss1);
        String ss5 = ss1;
        System.out.println(ss1.equals(ss2));
        //输出:true

        System.out.println(ss1==ss2);
        //输出:true

        System.out.println(ss1.equals(ss3));
        //输出:true

        System.out.println(ss1.equals(ss4));
        //输出:true

        System.out.println(ss1==ss3);
        //输出:false

        System.out.println(ss1==ss4);
        //输出:false

        System.out.println(ss1.equals(ss5));
        //输出:true

        System.out.println(ss1==ss5);
        //输出:true

        System.out.println(ss1.compareTo(ss2));
        //输出:0

        System.out.println(ss1.compareTo(ss3));
        //输出:0

    }
}