Java 学习必备基础:equals 和 ==的对比 |Java 刷题打卡

622 阅读1分钟

一、前言

本文正在参加「Java主题月 - Java 刷题打卡」,对于Java相关的刷题知识这个专栏是首次做的,我会从简单到复杂来分享相关知识点,如有不妥之处,还请大佬指正。

本篇文章继续分享关于Java 学习必备基础知识点:equals 和 == 的对比,具体分析如下所示。

二、知识点

1、equals

它的作用是判断两个对象是否相等,但是它有两种使用情况: ①:类没有被覆盖equals()方法,则通过equals()比较该类的两个对象时,等价于通过“==”比较这两个对象。

②:类覆盖了equals()方法,一般都覆盖equals()方法来比较两个对象的内容是否相等;若它们的内容相等,就返回true(即认为这两个对象相同)。

2、==

它的作用就是判断两个对象的地址是否相等。也就是判断两个对象是否为同一个对象。

三、示例

这里举一个关于equals的示例,如下:

        public class demo { 
		public static void main(String[] args) { 
		String a = new String("ab"); 	// a 为一个引用 
		String b = new String("ab"); 	// b 为另一个引用, 对象的内容一样 
		String aa = "ab"; 	// 放在常量池中 
		String bb = "ab"; 	// 从常量池中查找 
		if (aa == bb) 	// true 
			System.out.println("aa==bb"); 
		if (a == b) 	// false,不是同一对象 
			System.out.println("a==b"); 
		if (a.equals(b)) 	// true 
			System.out.println("a++b"); 
		if (42 == 42.0) { 	// true 
			System.out.println("true"); 
		    } 
		} 
	}	

四、总结

在Java学习的时候,必备知识点之一就是equals 和 ==的对比,还请学习者在学习的时候一定要加强巩固相关知识。通过本文上述讲解之后,读者应该清楚知道了equals 和 ==的对比。

以上就是本篇文章的知识点,欢迎指正批评。