欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-07-14 08:56:21
...

答案:

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
    }
}