如何在 Java 中比较字符串

原文:https://www.studytonight.com/java-examples/how-to-compare-string-in-java

在这篇文章中,我们将比较 Java 中的两个 String 对象。在 Java 中,字符串是一个字符序列和一个类。

要比较两个对象,字符串提供了equals()compareTo()方法。equals()方法用于比较两个 String 对象的内容,而 compareTo()则按字典顺序比较两个字符串,并返回一个整数值。

equals()方法返回 true 或 false。如果字符串对象相等,则返回 true,否则返回 false。

还有一种比较两个字符串对象的方法是= = "**运算符,用于比较这些字符串对象的两个内存引用。**

**## 举例时间:

让我们创建一个比较两个字符串对象的例子。这里,我们使用的是返回布尔值的equals()方法。

public class Main {
    public static void main(String[] args){
        String str1 = "Studytonight";
        String str2 = "studytonight";
        boolean val = str1.equals(str2);
        System.out.println(val);
        String str3 = str2;
        val = str2.equals(str3);
        System.out.println(val);
    }
}

假 真

示例:使用相等运算符比较字符串

在本例中,我们使用 == (等于)运算符来比较两个字符串对象引用。它比较这两个字符串对象是否引用内存中的同一个字符串。它返回一个布尔值,要么是要么是

public class Main {
    public static void main(String[] args){
        String str1 = "Studytonight";
        String str2 = "studytonight";
        boolean val = str1 == str2;
        System.out.println(val);
        String str3 = str2;
        val = str2 == str3;
        System.out.println(val);
    }
}

假 真

示例:使用 compareTo()方法比较字符串

让我们再举一个例子来比较字符串。这里,我们使用compareTo()方法,该方法根据字符串中每个字符的 Unicode 值来比较字符串。它返回一个正整数或负整数。

public class Main {
    public static void main(String[] args){
        String str1 = "Studytonight";
        String str2 = "studytonight";
        int val = str1.compareTo(str2);
        System.out.println(val);
        String str3 = str2;
        val = str2.compareTo(str3);
        System.out.println(val);
    }
}

-32 0