Java 中的比較字元是否相等的方法

Mohammad Irfan 2023年10月12日
  1. 在 Java 中使用 == 相等運算子檢查相等字元
  2. 使用 Java 中的 equals() 方法檢查相等的字元
  3. 使用 Java 中的 compare() 方法檢查相等的字元
Java 中的比較字元是否相等的方法

本教程介紹如何在 Java 中檢查兩個字元是否相等。

在 Java 中,我們可以使用 equals(==) 運算子或 Character 類的 equals() 方法來比較兩個字元。如果你使用原始字元值,你可以簡單地使用 == 相等運算子,但使用字元類例項,使用 equals() 方法。

在本文中,我們將通過示例學習這兩種比較相等方法的使用。讓我們開始吧。

在 Java 中使用 == 相等運算子檢查相等字元

Java 使用 == 相等運算子來檢查兩個值是否相等。我們可以使用這個運算子來檢查兩個字元是否相等。

在這個例子中,我們建立了三個字元並使用 == 等於運算子比較它們。如果兩個字元相等,則此運算子返回 true,否則返回 false。

public class SimpleTesting {
  public static void main(String[] args) {
    char ch1 = 'J';
    char ch2 = 'K';
    char ch3 = 'J';
    System.out.println(ch1 == ch2);
    System.out.println(ch2 == ch3);
    System.out.println(ch1 == ch3);
  }
}

輸出:

false
false
true

使用 Java 中的 equals() 方法檢查相等的字元

如果你正在使用 Character 類並想要比較兩個字元值,則使用屬於 Object 類的 equals() 方法,如果物件相等則返回 true,否則返回 false。請參閱下面的示例。

public class SimpleTesting {
  public static void main(String[] args) {
    Character ch1 = 'J';
    Character ch2 = 'K';
    Character ch3 = 'J';
    System.out.println(ch1.equals(ch2));
    System.out.println(ch2.equals(ch3));
    System.out.println(ch1.equals(ch3));
  }
}

輸出:

false
false
true

使用 Java 中的 compare() 方法檢查相等的字元

這是另一種可用於檢查兩個字元是否相等的解決方案。compare() 方法屬於 String 類,如果兩個值相等,則返回 0。

在這裡,我們使用此方法和 == 等於運算子來驗證它是否返回 0。如果它返回 0,則兩個值相等。請參閱下面的示例。

public class SimpleTesting {
  public static void main(String[] args) {
    Character ch1 = 'J';
    Character ch2 = 'K';
    Character ch3 = 'J';
    System.out.println(Character.compare(ch1, ch2) == 0);
    System.out.println(Character.compare(ch2, ch3) == 0);
    System.out.println(Character.compare(ch1, ch3) == 0);
  }
}

輸出:

false
false
true

在檢查兩個物件的相等性時,請始終檢查值。Java 不認為小寫和大寫相等。我們認為這兩個值是相同的,但是 Java 對 Unicode 值起作用,並且兩個變數持有不同的 Unicode。這就是 Java 向控制檯返回 false 的原因。請參閱程式碼示例並瞭解 Java 對小寫和大寫字元的處理方式不同。

public class SimpleTesting {
  public static void main(String[] args) {
    Character ch1 = 'J';
    Character ch2 = 'j';
    System.out.println(ch1 == ch2);
  }
}

輸出:

false