今天就跟大家聊聊有关=()如何在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 nullequals()如何在Java中使用