Java常用类学习:Object类(equals方法)

Java常用类学习:Object类(equals方法)

  • equals方法:

    • Object equals()方法用于比较2个对象是否相等

    • equals()方法比较2个对象,是判断2个对象的引用是否相同;即比较2个对象的内存地址是否相等;

    • 注意:如果子类重写了equals()方法,就需要重写hashCode()方法,比如String类就重写了equals()方法,同时也重写了hashCode()方法;

  • 语法:

    • object.equals(Object obj);

  • 参数:

    • obj:要比较的对象;

  • 返回值:

    • boolean类型,如果2个对象相等返回true,否则返回false;

     

  • 代码案例:equals比较


    public class ObjectDemo02 {
       public static void main(String[] args) {

           Student st1=new Student();
           Student st2=new Student();
         
           //判断st1与st2是否相等:
           //不同对象,内存地址不同,所以不相等;返回false
           if(st1.equals(st2)){
               System.out.println("匹配");
          }else{
               System.out.println("不匹配");
          }

           System.out.println("---------------------------");

           //str1赋值给obj3
           //String重写了equals()方法
           //对象引用,内存地址相同,返回true
           Object obj3=st1;
           if(ob3.equals(str1)){
               System.out.println("匹配");
          }else{
               System.out.println("不匹配");
          }

      }

    }

 

  • String类重写了equals()方法,用于比较2个字符串是否相等;

  • 代码案例2:


    public class ObjectDemo03 {
       public static void main(String[] args) {

           //String类使用equals()方法
           //创建2个对象
           String str1=new String();
           String str2=new String();

           //判断str1与str2是否相等
           //初始化的2个对象都为null,所以是相等,返回true
           System.out.println(str1.equals(str2));

           //给对象赋值
           str1="haha";
           str2="xixi";
           //2个值不同,内存地址也不同,所以不相等,返回false
           System.out.println(str1.equals(str2));
      }
    }

     

posted @   gzs1024  阅读(197)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示