Java String 類 equals() 方法根據字符串的內容比較兩個給定的字符串。如果有任何字符不匹配,則返回 false。如果所有字符都匹配,則返回 true。
String equals() 方法覆蓋 Object 類的 equals() 方法。
簽名
publicboolean equals(Object anotherObject)
參數
anotherObject:另一個對象,即與此字符串進行比較。
返回
如果兩個字符串的字符相等,則為真,否則為假。
內部實現
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String) anObject;
int n = value.length;
if (n == anotherString.value.length) {
char v1[] = value;
char v2[] = anotherString.value;
int i = 0;
while (n-- != 0) {
if (v1[i] != v2[i])
return false;
i++;
}
return true;
}
}
return false;
}
Java 字符串 equals() 方法示例
文件名:EqualsExample.java
public class EqualsExample{
public static void main(String args[]){
String s1="javatpoint";
String s2="javatpoint";
String s3="JAVATPOINT";
String s4="python";
System.out.println(s1.equals(s2));//true because content and case is same
System.out.println(s1.equals(s3));//false because case is not same
System.out.println(s1.equals(s4));//false because content is not same
}}
輸出:
true false false
Java 字符串 equals() 方法示例 2
equals() 方法比較兩個字符串,可用於 if-else 控製結構。
文件名:EqualsExample2.java
public class EqualsExample2 {
public static void main(String[] args) {
String s1 = "javatpoint";
String s2 = "javatpoint";
String s3 = "Javatpoint";
System.out.println(s1.equals(s2)); // True because content is same
if (s1.equals(s3)) {
System.out.println("both strings are equal");
}else System.out.println("both strings are unequal");
}
}
輸出:
true both strings are unequal
Java 字符串 equals() 方法示例 3
讓我們再看一個例子來測試列表中字符串的相等性。
文件名:EqualsExample3.java
import java.util.ArrayList;
public class EqualsExample3 {
public static void main(String[] args) {
String str1 = "Mukesh";
ArrayList<String> list = new ArrayList<>();
list.add("Ravi");
list.add("Mukesh");
list.add("Ramesh");
list.add("Ajay");
for (String str:list) {
if (str.equals(str1)) {
System.out.println("Mukesh is present");
}
}
}
}
輸出:
Mukesh is present
Java 字符串 equals() 方法示例 4
equals() 方法的內部實現表明,可以在方法的參數中傳遞任何對象的引用。以下示例顯示了相同的內容。
文件名:EqualsExample4.java
public class EqualsExample4
{
// main method
public static void main(String argvs[])
{
// Strings
String str = "a";
String str1 = "123";
String str2 = "45.89";
String str3 = "false";
Character c = new Character('a');
Integer i = new Integer(123);
Float f = new Float(45.89);
Boolean b = new Boolean(false);
// reference of the Character object is passed
System.out.println(str.equals(c));
// reference of the Integer object is passed
System.out.println(str1.equals(i));
// reference of the Float object is passed
System.out.println(str2.equals(f));
// reference of the Boolean object is passed
System.out.println(str3.equals(b));
// the above print statements show a false value because
// we are comparing a String with different data types
// To achieve the true value, we have to convert
// the different data types into the string using the toString() method
System.out.println(str.equals(c.toString()));
System.out.println(str1.equals(i.toString()));
System.out.println(str2.equals(f.toString()));
System.out.println(str3.equals(b.toString()));
}
}
輸出:
false false false false true true true true
相關用法
- Java String equalsIgnoreCase()用法及代碼示例
- Java String endsWith()用法及代碼示例
- Java String valueOf()用法及代碼示例
- Java String getChars()用法及代碼示例
- Java String substring()用法及代碼示例
- Java String replace()用法及代碼示例
- Java String contains()用法及代碼示例
- Java String copyValueOf()用法及代碼示例
- Java String isEmpty()用法及代碼示例
- Java String toString()用法及代碼示例
- Java String split()用法及代碼示例
- Java String lines()用法及代碼示例
- Java String repeat()用法及代碼示例
- Java String strip()用法及代碼示例
- Java String lastIndexOf()用法及代碼示例
- Java String replaceAll()用法及代碼示例
- Java String subSequence()用法及代碼示例
- Java String startsWith()用法及代碼示例
- Java String getBytes()用法及代碼示例
- Java String indexOf()用法及代碼示例
注:本文由純淨天空篩選整理自 Java String equals()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。