提到比较 首先想到的 == 运算,但是这个比较的是两个字符串的地址是否相等,而非内容
public class operatorCampare(){
public static void main(String[] args){
String s="123";
String m=“123“;
boolean n = s==m;
System.out.println(n);
}
}
返回结果为false ,,因为s和m分别在内存中开辟了一个空间
所以要比较两个字符串的内容,Java中提供了str.equals(String other),比较时区分大小写
也可以使用str.equalsIgnoreCase(String other) 不区分大小写
compareTo()方法,按字典顺序依次比较每一个字符,相当于遇到第一个不同的字符会输出结果正数或负数,只有两个字符串在equals() 为true是,他才为0
public class compare(){
public static void main(Sting[] args){
String s = "1434";
String m = "0345";
System.out.println(s.equals(m));
System.out.println(m.compareTo(s));
}
}
输出结果为-1 因为0在1前面 所以返回一个负数