当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java String equals()用法及代码示例


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 equals()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。