【Java】请解释String类“==”和“equals”的区别

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_37941471/article/details/88039347

答案:

1.  “==” :进行的是数值的比较;如果比较字符串时,比较的是两个字符串对象的内存地址数值
2. “equals”:可以进行字符串内容的比较

下面用简单的代码实现:


1. 两个int类型的数比较

public class testString {
    public static void main(String[] args){
        int i = 10;
        int j = 10;
        System.out.println(i == j);  // true
    }
}

2. 两个字符串比较 (==)

public class testString {
    public static void main(String[] args){
        String str1 = "Hello World";
        String str2 = new String("Hello World");
        System.out.println(str1 == str2); //  结果:false  原因:“==” :进行的是数值的比较;如果比较字符串时,比较的是两个字符串对象的内存地址数值
    }
}

3. 两个字符串比较 (equals)

public class testString {
    public static void main(String[] args){
        String str1 = "Hello World";
        String str2 = new String("Hello World");
        System.out.println(str1.equals(str2));  // true
    }
}

猜你喜欢

转载自blog.csdn.net/qq_37941471/article/details/88039347
今日推荐