在Object 类中定义有:

1、public boolean equals(Object object )方法提供定义对象是否“相等”逻辑。

2、Object的equals方法定义为:x.equals(y)当x和y是同一个对象的引用时,返回true,否则返回false

3、在其他一些类中,例如String Date等,重写了Object的equals方法,调用这些类的equals方法,当x和y所引用的对象是同一类对象且属性内容相等时

(并不一定是相同对象),return true; 否则的话,return false;

4、当然,可以根据需要在用户自己定义重写equal方法。

举例:

public class TestEquals{

public  static void main(String[] args) {
                Cat c1 = new Cat(1,2,3);
                Cat c2 = new Cat(1,2,3);
                System.out.println(c1 == c2);//false
                System.out.println(c1.equals(c2));//true
        }
    }
    class Cat{
        int color;
        int height,weight;
        public Cat(int color, int height, int weight){
            this.color = color;
            this.height = height;
            this.weight = weight;
        }
    public boolean equals​(Object obj){
        if(obj == null) return false;
        else{
            if(obj instanceof Cat){/*if obj is  a object of Cat ,return true ,else if obj is not a object of Cat or is null,return flase*/
            Cat c = (Cat)obj;
            if(c.color == this.color && c.height == this.height && c.weight == this.weight)
            return true;
            }
        }
    }

return false;

}

运行结果:

false
       true

java中的equals用法相关推荐

  1. 【Java学习笔记之二十九】Java中的equals和==的用法及区别

    Java中的"equals"和"=="的用法及区别 在初学Java时,可能会经常碰到下面的代码: 1 String str1 = new String(&quo ...

  2. Java中的equals(),==,compareTo()和compare()

    Java中的equals(),==,compareTo()和compare() 首先只有==可以用作两个基本类型数据之间的比较,当然是值比较.当用作两个对象比较时,比较的是对象引用,而不是值比较. 其 ...

  3. java中的基本用法

    java中的基本用法 关键字:专门用途的字符串 所有java关键字都是小写英文 标识符 java常量 java变量 ■ 作用域:起作用的区域■ 使用前必须先声明,在赋值.使用变量名访问这块区域 jav ...

  4. Java中getResourceAsStream的用法

    Java中getResourceAsStream的用法 首先,Java中的getResourceAsStream有以下几种: 1. Class.getResourceAsStream(String p ...

  5. 面试必问一:Java 中 == 和 equals 的区别你知道吗

    面试必问一:Java 中 == 和 equals 的区别你知道吗 前言 关于这个问题,一般初中级面试中都会遇到,还记得我当初实习找工作的时候也遇到了这个问题,现在都还记得自己是怎么回答的:== 是基本 ...

  6. Java中的equals学习小结

    Java中的equals是十分重要的,和= =要区别开来,最近在看孙卫琴的JAVA面向对象编程一书,觉得对其阐述写的不错,所以现在小结其 主要内容,而且要将 = =和 equals列为重要的对比概念来 ...

  7. Java中getResourceAsStream的用法小结

    2019独角兽企业重金招聘Python工程师标准>>> Java中getResourceAsStream的用法小结 一.Java中的getResourceAsStream主要有以下三 ...

  8. java中substring的用法

    2019独角兽企业重金招聘Python工程师标准>>> java中substring的用法 str=str.substring(int beginIndex);截取掉str从首字母起 ...

  9. JAVA中Final的用法

    JAVA中Final的用法 1. 修饰基础数据成员的final 这是final的主要用途,其含义相当于C/C++的const,即该成员被修饰为常量,意味着不可修改.如java.lang.Math类中的 ...

最新文章

  1. shell 不等于_关于shell编程中的整数值比较的两种方式的简单操作实例
  2. 重磅新政!土拍规则大调整!土地市场将迎“大降温”
  3. 云计算-从基础到应用架构系列-云计算的概念
  4. 《Java Web高级编程——涵盖WebSockets、Spring Framework、JPA H
  5. oracle编程艺术笔记1
  6. stm32 定时器初步
  7. GitFlow 工作流和Code Review教程
  8. 联想(Lenovo)小新310经典版进bios方法
  9. ASP.NET Core + Docker + Jenkins + gogs + CentOS 从零开始搭建持续集成
  10. 你必须搞清楚的String,StringBuilder,StringBuffer
  11. 计算机类型应用性能,[计算机组成原理]计算机系统性能评价
  12. Repeater绑定ArrayList数据源
  13. 开发者友好性和易用性
  14. 基于事件的异步模式概述
  15. 信息论与编码基础概念
  16. 飞思卡尔单片机学习记录(一)
  17. linux中安装无线网卡驱动,在linux下安装无线网卡驱动
  18. 华为鸿蒙os logo,华为鸿蒙OS Logo揭秘:Powered by HarmonyOS
  19. 书籍《阅读的方法》读后感
  20. 怎么把文件发给商家打印?如何给商家发送需打印的文件

热门文章

  1. This is Me!——回顾第一个项目的前前后后
  2. css 宋体_Java前端基础(一)之html/css
  3. 有这个OCR程序,不用再买VIP了,Python 调用百度OCR API
  4. html单张图片效果,jquery+html5实现单张图片上传预览
  5. 依赖注入Bean属性——手动装配Bean
  6. linux磁盘冗余阵列
  7. Google File System设计方面的问题汇总
  8. 求字符串的最长回文字串 O(n)
  9. 每个网页设计者都自以为是
  10. 全国计算机等级考试题库二级C操作题100套(第31套)