equals()如何在Java中使用

  介绍

今天就跟大家聊聊有关=()如何在Java中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

Java是什么

Java是一门面向对象编程语言,可以编写桌面应用程序,网络应用程序,分布式系统和嵌入式系统应用程序。

1.=的本意——即在对象对象中定义的equals()方法有什么样的意义。

(此处先附上==的作用,后面仍有叙述。因为==和=()方法的关系是很密切的,后面有我自己的看法。

==用于比较引用和比较基本数据类型时具有不同的功能:
比较基本数据类型,如果两个值相同,则结果为真正的
而在比较引用时,如果引用指向内存中的同一对象,结果为true)

公共布尔=(对象obj)

其比较规则为:当参数obj引用的对象与当前对象为同一个对象时,就返回真,否则返回错误的。

 public  class  Fish  {
  ,private  int 体重;
  ,private  String 颜色;
  
  ,
  
  ,public 鱼(int 体重,String 颜色),{
  时间=this.color 才能;颜色;
  时间=this.weight 才能;体重;
  ,}
  
  ,public  int  getWeight (), {
  return 才能;体重;
  ,}
  
  ,public  void  setWeight (int 重量),{
  时间=this.weight 才能;体重;
  ,}
  
  ,
  
  ,public  String 色鬼(),{
  return 才能;颜色;
  ,}
  
  ,public  void 改变颜色(String 颜色),{
  时间=this.color 才能;颜色;
  ,}
  
  }
  
  public  class  EqualsTest  {
  ,public  static  void  main (String [], args), {
  Fish 才能;f1 =, new 鱼(1,“blue");
  Fish 才能;f2 =, new 鱼(1,“blue");
  
  ,
  
  System.out.println才能(f1 ==, f2);
  System.out.println才能(f1.equals (f2));
  ,}
  }

运行结果为


由此可见,等于()方法的本意为确定两个对象的引用是否相同。

2。而JDK类中有一些类覆盖了oject类的equals()方法,比较规则为:如果两个对象的类型一致,并且内容一致,则返回真,这些类有:

java.io.file, java.util.Date . lang。字符串,包装类(整数,双等)

public  class  EqualsTest  {   ,public  static  void  main (String [], args), {   String 才能s1=new 字符串(“sss");   String 才能s2=new 字符串(“sss");   ,,   System.out.println才能(s1==s2);   System.out.println才能(s1.equals (s2));   ,}   }

运行结果为


由此可见,等于()方法的本意为确定两个对象的引用是否相同。

2。而JDK类中有一些类覆盖了oject类的equals()方法,比较规则为:如果两个对象的类型一致,并且内容一致,则返回真,这些类有:

java.io.file, java.util.Date . lang。字符串,包装类(整数,双等)

public  class  EqualsTest  {   public 才能;static  void  main (String [], args), {   ,,,String  s1=new 字符串(“sss");   ,,,String  s2=new 字符串(“sss");   ,,,,   ,,,System.out.println (s1==s2);   ,,,System.out.println (s1.equals (s2));   ,,}   }

运行结果为


由此知道,在字符串中=()方法被进行了覆盖,使其意义变为比较两个对象的内容是否一致

3。如果我们要自己覆盖=()方法,让其比较内容或者有别的使用方法(当然我们一般都是用于比较内容的,但是覆盖的方法中真正的实现究竟是什么样的,谁知道呢O (∩_∩) O ~)

public  class  Fish  {   private 才能int 体重;   private 才能;String 颜色;      ,      public 才能;鱼(int 体重,String 颜色),{   ,,,this.color =,颜色;   ,,,this.weight =,重量;   ,,}   ,,   @Override才能   public 才能;int  hashCode (), {   ,,,final  int  prime =, 31日;   ,,,int  result =, 1;   ,,,result =, prime  *, result  +, ((==color  null), ?, 0,:, color.hashCode ());   ,,,result =, prime  *, result  +,重量;   ,,,return 结果;   ,,}   ,,   @Override才能   public 才能;boolean  equals (Object  obj), {   ,,,if (却;能够==,obj)   ,,,,,return 真实;   ,,,if  (obj ==, null)   ,,,,,return 假;   ,,,if  (getClass (), !=, obj.getClass ())   ,,,,,return 假;   ,,,Fish  other =,(鱼),obj;   ,,,if  (color ==, null), {   ,,,,,if  (other.color  !=, null)   ,,,,,,,return 假;   ,,,},else  if  (! color.equals (other.color))   ,,,,,return 假;   ,,,if  (weight  !=, other.weight)   ,,,,,return 假;   ,,,return 真实;   ,,}   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

equals()如何在Java中使用