字符串的常用池和字符串的比较相关方法
字符串的常用池
public static void main(String[] args) { String str1 = "abc"; String str2 = "abc"; char[] charArray = {'a','b','c'}; String str3 = new String(charArray); System.out.println(str1 ==str2); System.out.println(str1 == str3); System.out.println(str2 == str3); }
对于基本类型来说,==是进行数值的比较
对于引用类型来说,==是进行【地址值】的比较。

字符串比较的相关方法
==比较的是字符串对象的地址值,如果想要比较字符串的内容可以使用这两个方法:
boolean equals(Object obj),参数可以使任何对象,只有参数是一个字符串并且内容相同的才会给true,否则返回false。
注意事项:
1.任何对象都能用Object进行接收
2.equals方法具有对称性,也就是a.equals(b)和b.equals(a)效果一样
String st1 = "Hello"; String st2 = "Hello"; char[] chars = {'H','e','l','l','o'}; String st3 = new String(chars); System.out.println(st1.equals(st2));//比较内容是否相同 System.out.println(st3.equals("Hello")); System.out.println("Hello".equals(st2));
boolean equalsIgnoreCase(String str) 忽略大小写,进行内容比较
String s = "ABC"; String ss = "abc"; System.out.println(s.equalsIgnoreCase(ss));

浙公网安备 33010602011771号