java的String的equals方法和"=="比较

package stringTest;

public class StringDemo {
	public static void main(String[] args){
		
		//下面两种方法定义的字符串是不一样的
		String s1 = new String("abc");
		String s2 = "abc"; 
		String s3 = "abc"; //s2和s3指向常量池中同一个区域
		
		/**
		 * String类中的equals方法,复写了Object中的equals方法,
		 * 用于判断字符串是否相同,不是比较字符串的地址
		 * */
		System.out.println(s1.equals(s2)); //true
		System.out.println(s2.equals(s3)); //true
		System.out.println(s1.equals(s3)); //true
		
		//"==" 是用于比较字符串类对象的地址
		System.out.println(s1 == s2); //false
		System.out.println(s2 == s3); //true
		System.out.println(s1 == s3); //false
	}
}

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。