示例 1: Java 程序区分 == 和 equals()
class Main { public static void main(String[] args) { String name1 = new String("Programiz"); String name2 = new String("Programiz"); System.out.println("Check if two strings are equal"); // check if two strings are equal // using == operator boolean result1 = (name1 == name2); System.out.println("Using == operator: " + result1); // using equals() method boolean result2 = name1.equals(name2); System.out.println("Using equals(): " + result2); } }
输出
Check if two strings are equal Using == operator: false Using equals(): true
在上面的示例中,我们使用了
==
运算符和
equals()
方法来检查两个字符串是否相等。在这里,
==
检查对字符串对象的引用是否相等。这里,name1 和 name2 是两个不同的引用。因此,它返回 false
。
equals()
检查字符串对象的内容是否相等。这里,对象name1 和name2 的内容是相同的Programiz。因此,它返回 true
。
示例 2: 区分 == 和 equals()
class Main { public static void main(String[] args) { String name1 = new String("Programiz"); String name2 = name1; System.out.println("Check if two strings are equal"); // check if two strings are equal // using == operator boolean result1 = (name1 == name2); System.out.println("Using == operator: " + result1); // using equals() method boolean result2 = name1.equals(name2); System.out.println("Using equals(): " + result2); } }
输出
Check if two strings are equal Using == operator: true Using equals(): true
这里,
name1 和
name2 都指向同一个对象。因此,
name1 == name2
返回
true
。