package edu.tjcu.wfh2.Demo02;
/*
== 是进行对象的地址值比较,如果确实需要字符串的内容比较,可以使用两个方法:
public boolean equals(Object obj):
参数可以是任何对象,只有参数是一个字符串并且内容相同的才会给true,否则返回false
注意事项:
1.任何对象都能用Object进行接收。
2. equals方法具有对称性,也就是a.equals(b)和b.equals( a)效果一样。
3.如果比较双方一个常量一个变量,推荐把常量字符串写在前面。
推荐:"abc".equals(str)不推荐: str.equals( "abc")
*/
public class Demo01StringEquals {
public static void main(String[] args) {
String str1 = "Hello";
String str2 = "Hello";
char[] charString = {'H','e','l','l','o'};
String str3 = new String(charString);
System.out.println(str1.equals(str2)); //true
System.out.println(str1.equals(str3)); //true
System.out.println(str3.equals("Hello")); //true
System.out.println("Hello".equals(str1)); //true
String str4 = "hello";
System.out.println("hello".equals(str3)); //false
System.out.println("===========");
String str5 = null;
System.out.println("Hello".equals(str5)); //false 推荐
// System.out.println(str5.equals("Hello")); //空指针异常 不推荐
System.out.println("=============");
String strA = "JAVA";
String strB = "java";
System.out.println(strA.equals(strB)); //false
System.out.println(strA.equalsIgnoreCase(strB)); //true
System.out.println("=============");
// 只有英文字母才区分大小写
//String str6 = "abc";
System.out.println("abc一123".equalsIgnoreCase("abc壹123")); //false
}
}
结果截图: