国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Java中的== 和equals()有什么方法實例

瀏覽:2日期:2023-11-30 11:24:51

Java中的== 和equals()有什么方法實例?來看看Java中的== 和equals()方法:

Java中的== 和equals()有什么方法實例

Java中的數據類型,可分為兩類:

1.基本數據類型,也稱原始數據類型。

byte,short,char,int,long,float,double,boolean,他們之間的比較,應用雙等號(==),比較的是他們的值。

2.引用數據類型(類)

當它們用(==)進行比較的時候,比較的是他們在內存中的存放地址,所以,除非是同一個new出來的對象,他們的比較后的結果為true,否則比較后結果為false。

Java當中所有的類都是繼承于Object這個基類的,在Object中的基類中定義了一個equals()的方法,這個方法的初始行為是比較對象的內存地址,但在一些類庫當中這個方法被覆蓋掉了,如String,Integer,Date在這些類當中equals有其自身的實現,而不再是比較類在堆內存中的存放地址。

對于引用數據類型之間進行equals比較,在沒有覆寫equals方法的情況下,他們之間的比較還是基于他們在內存中的存放位置的地址值的,因為Object的equals方法也是用雙等號(==)進行比較的,所以比較后的結果跟雙等號(==)的結果相同。

Object中的equals()方法

publicbooleanequals(Objectobj){ return(this==obj); } 舉個實例: packageorg.java.test; publicclassPerson{ privateintage; privateStringname; publicintgetAge(){ returnage; } publicvoidsetAge(intage){ this.age=age; } publicStringgetName(){ returnname; } publicvoidsetName(Stringname){ this.name=name; } publicPerson(intage,Stringname){ this.age=age; this.name=name; } publicPerson(){ } @Override publicinthashCode(){ finalintprime=31; intresult=1; result=prime*result+age; result=prime*result+((name==null)?0:name.hashCode()); returnresult; } @Override publicbooleanequals(Objectobj){ if(this==obj) returntrue; if(obj==null) returnfalse; if(getClass()!=obj.getClass()) returnfalse; Personother=(Person)obj; if(age!=other.age) returnfalse; if(name==null){ if(other.name!=null) returnfalse; }elseif(!name.equals(other.name)) returnfalse; returntrue; } } MainTest.java[java]view plaincopyprint? packageorg.java.test; publicclassMainTest{ publicstaticvoidmain(String[]args){ Personp1=newPerson(99,"A"); Personp2=newPerson(99,"A"); Personp3=p1; System.out.println(p1==p2);//false System.out.println(p1==p3);//true System.out.println(p1.equals(p2)); //未重寫equals()方法,返回false //重寫equals()方法后,比較的是內容,返回true; System.out.println("<====================>"); Strings1="hello"; Strings2="hello"; Strings3=newString("hello"); System.out.println(s1==s2);//true System.out.println(s1==s3);//false System.out.println(s1.equals(s2));//true System.out.println(s1.equals(s3));//true } }

標簽: Java
相關文章:
主站蜘蛛池模板: 成人午夜毛片 | 欧美成本人视频 | 国产一级在线观看视频 | 亚洲欧美高清视频 | 色熟 | 在线不卡一区二区 | 午夜性色福利视频在线视频 | 婷婷丁香花麻豆 | 成人欧美一区二区三区在线 | 久色小说 | 国产真真人女人特级毛片 | 欧美国产成人免费观看永久视频 | 欧美另类激情 | 欧美在线一区二区三区欧美 | 日韩欧美精品综合一区二区三区 | 久久人| 91九色国产 | 亚洲一区区 | 美日韩一区二区三区 | 夜夜春夜夜夜夜猛噜噜噜噜噜 | 国产东北色老头老太性视频 | 日韩视频免费一区二区三区 | 欧美毛片日韩一级在线 | 欧美特级午夜一区二区三区 | 在线欧美国产 | 免费观看欧美精品成人毛片能看的 | 最新精品亚洲成a人在线观看 | 中国japanesevideo乱 | 久久99国产一区二区三区 | 国产成人lu在线视频 | 亚洲国产另类久久久精品小说 | 日日噜噜噜夜夜爽爽狠狠69 | 成人免费大片黄在线观看com | 在线亚洲综合 | 国产日产久久高清欧美一区 | 高清波多野结衣一区二区三区 | 国产高清免费 | 欧美高清另类自拍视频在线看 | 一级毛片国产 | 国产欧美日韩中文久久 | 美女张腿男人桶免费视频 |