==和equals

72 阅读1分钟

第3题(2023/9/9)

java中==和.equal()方法的区别?

答:

(1)首先对于“==”来说,对于基本数据类型,他比较的是存储在栈中的变量值,而对于引用数据类型来说,他比较的其实是实例对象所在的引用地址。

(2)对于equals来说,Object.equals()默认的其实就是==,而equals一般都会进行重写比如String类型中的重写。

public class StringDemo(){
	String s1 = "hello";
	String s2 = new ("hello");
	String s3 = s2;
	
	System.out.printLn(s1 == s2); //false
	System.out.printLn(s1 == s3); //false
	System.out.printLn(s3 == s2); //true
	System.out.printLn(s1 == s2); //true
	System.out.printLn(s1 == s3); //true
	System.out.printLn(s3 == s2); //true
	
}