equals属于哪个类,== 和 equals方法的区别

 2023-09-23 阅读 29 评论 0

摘要:== 和 equals方法的区别【面试题】 一、== 是一个运算符,比较的是数据的关系,可以比较任意数据类型的数据 基本数据类型: equals属于哪个类。比较就是数据本身的大小关系 引用数据类型 : 比较的是对象的地址值是否一致【Object的

== 和 equals方法的区别【面试题】

一、  == 是一个运算符,比较的是数据的关系,可以比较任意数据类型的数据

    基本数据类型:

equals属于哪个类。            比较就是数据本身的大小关系

    引用数据类型 :

            比较的是对象的地址值是否一致【Object的equals方法底层采用的 == 比较】

new和malloc的区别?二、  equals是一个方法,需要对象来调用,只能比较引用数据类型的数据

        重写equals方法:

                比较的是两个对象的属性值【所有的属性值】是否一致

java中==与equals的区别及理解。        没有重写equals方法:

                和 == 是一样的比较的是地址值是否一致

代码示例

public class EqualsDemo {private String name;private int age;//有参构造public EqualsDemo(String name, int age) {super();this.name = name;this.age = age;}//无参构造public EqualsDemo() {super();}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}//重写hashCode()方法@Overridepublic int hashCode() {final int prime = 31;int result = 1;result = prime * result + age;result = prime * result + ((name == null) ? 0 : name.hashCode());return result;}//重写equals()方法@Overridepublic boolean equals(Object obj) {if (this == obj)return true;if (obj == null)return false;if (getClass() != obj.getClass())return false;EqualsDemo other = (EqualsDemo) obj;if (age != other.age)return false;if (name == null) {if (other.name != null)return false;} else if (!name.equals(other.name))return false;return true;}	
}测试类:
public class TestEqualsDemo {public static void main(String[] args) {//创建对象EqualsDemo equalsDemo1 = new EqualsDemo("张三",20);EqualsDemo equalsDemo2 = new EqualsDemo("张三",20);//  == 比较引用数据类型的时候,比较的的是地址值System.out.println(equalsDemo1 == equalsDemo2); //false//  == 比较基本数据类型的时候,比较的是属性值System.out.println(equalsDemo1.getName() == equalsDemo2.getName());  //trueSystem.out.println(equalsDemo1.getAge() == equalsDemo2.getAge());  //trueSystem.out.println("================");//重写后的equals()方法比较的是属性值是否一致System.out.println(equalsDemo1.equals(equalsDemo2));  //返会true,未重写equals()方法时返回false}
}

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/87043.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息