1 /*
2 ==是进行对象的地址值比较,如果确实需要字符串的内容比较,可以使用两个方法:
3
4 public boolean equals(Object obj):参数可以是任何对象,只有参数是一个字符串并且内容相同才会给true;否则返回false。
5 注意事项:
6 1、任何对象都能用Object进行接受。
7 2、equals方法具有对称性,也就是a.equals(b)和b.equals(a)效果一样
8 3、如果比较双方一个常量一个变量,推荐把常量字符串写在前面。
9 推荐:"abc".equals(str1) 不推荐:str.equals("abc")
10
11 public boolean equalsIgnoreCase(String str):忽略大小写,进行内容比较。
12 */
13 public class Demo01StringEquals {
14 public static void main(String[] args){
15 String str1="Hello";
16 String str2="Hello";
17
18 char [] charArray={'H','e','l','l','o'};
19 String str3=new String(charArray);
20
21 System.out.println(str1.equals(str2));
22 System.out.println(str2.equals(str3));
23 System.out.println("Hello".equals(str1));
24 System.out.println(str1.equals("Hello"));
25
26 String str4 ="hello";//大小写不一样
27 System.out.println(str1.equals(str4));//false
28 System.out.println("===================");
29
30 String str5=null;
31 System.out.println("abc".equals(str5));//推荐:false
32 System.out.println(str5.equals("abc"));//不推荐:报错,空指针异常NullPointerException
33 //只要在调用方法的时候 "."之前是一个null,就会报出NullPointerException
34
35 String strA="Java";
36 String strB="java";
37 System.out.println(strA.equals(strB)); //false,严格区分大小写
38 System.out.println(strA.equalsIgnoreCase(strB));//true,忽略大小写
39
40 // 注意,只有英文字母区分大小写,其他都不区分大小写
41 System.out.println("abc一123".equalsIgnoreCase("abc壹123")); // false
42
43 }
44
45 }