Java -26 String什么时候进行值比较,什么时候进行引用比较?

stringA.equals(stringB);进行值比较( string类对object中的equals方法进行了覆写)
stringA==stringB;进行引用比较


public class test {
	public static void main(String[] args) {
		String s1=new String("hello");
		String s2=s1;
		String s3=new String("hello");
		System.out.println(s1==s2);//true
		System.out.println(s1.equals(s2));//true
		System.out.println(s1==s3);//false
		System.out.println(s1.equals(s3));//true
	}

}

String对象是不可变的,在String类中每一个看起来会修改String对象内容的方法,实质都是创建了一个全新的String对象。

上一篇:Object中equals方法的机制研究


下一篇:webpack4实战四--插件使用(webpack-dev-server篇)