99 new 比较的是地址;直接赋值 比较的是字符串内容;
原因是new 是开辟了一个新的空间
1 package com.fqs.demo001; 2 3 public class Compare { 4 public static void main(String[] args) { 5 String s1=new String("a,b,c"); 6 //new了一个新的地址 7 String s2=new String("a,b,c"); 8 if(s1==s2){ 9 System.out.println("相等"); 10 }else{ 11 System.out.println("不相等");//结果 不相等 12 } 13 } 14 }
package com.fqs.demo001; public class Compare { public static void main(String[] args) { String s1=("a,b,c"); String s2=("a,b,c"); //a,b,c已经存在所以依旧是之前的a,b,c if(s1==s2){ System.out.println("相等");//结果相等 }else{ System.out.println("不相等"); } } }
比较
package com.fqs.demo001;
public class Compare {
public static void main(String[] args) {
String s1=new String("a,b,c");
String s2=new String( "a,b,c");
String s3=new String( "A,b,c");
//a,b,c已经存在所以依旧是之前的a,b,c
//大小写敏感,判断相等
if(s1.equals(s2) ){
System.out.println("s1和s2相等");
}else{
System.out.println("s1和s2不相等");
}
//大小写不敏感,判断相等
if(s1.equalsIgnoreCase(s2) ){
System.out.println("s1和s2相等");
}else{
System.out.println("s1和s2不相等");
}
//判断s1和s3
//大小不写敏感,判断相等
if(s1.equalsIgnoreCase(s3) ){
System.out.println("s1和s3相等");
}else{
System.out.println("s1和s3不相等");
}
//大小写敏感,判断相等
if(s1.equals(s3) ){
System.out.println("s1和s3相等");
}else{
System.out.println("s1和s3不相等");
}
}
}