JAVA中字符串比较equals和equalsIgnoreCase都是用来判断两个字符串是否相等的。不同的是equals判断的字符串是判断两个字符串是否有相同的字符和长度而且区分大小写,equalsIgnoreCase在equals的基础上是不区分大小写的。事例如下:
class equalsDemo {
public static void main(String args[]) {
String s1 = "Hello";
String s2 = "Hello";
String s3 = "Good-bye";
String s4 = "HELLO";
System.out.println(s1 + " equals " + s2 + " -> " +
s1.equals(s2));
System.out.println(s1 + " equals " + s3 + " -> " +
s1.equals(s3));
System.out.println(s1 + " equals " + s4 + " -> " +
s1.equals(s4));
System.out.println(s1 + " equalsIgnoreCase " + s4 + " -> " +
s1.equalsIgnoreCase(s4));
}
}
上面的代码s1和s2是有相同的字符所以s1.equals(s2)返回为true。
s1和s3是没有相同的字符,所以s1.equals(s3)返回为false。
s1和s4是有相同的字符,但是大小写不同所以s1.equals(s4)返回为false。而若是使用了equalsIgnoreCase则说明了该比较不区分大小写,所以s1.equalsIgnoreCase(s4)
为true。