亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java中的equsals和==

 更新時間:2021年08月27日 17:05:11   作者:毅毅毅毅毅  
這篇文章主要介紹了Java中的equsals和==的相關內容,感興趣的朋朋友可以參考下文

Java的equsals和==

前言:在我們常用的類中equals被重寫后,作用就是為了比較對象的內容,==是比較對象的內存地址。但并不能說所有的equals方法就是比較對象的內容。

1、Java 中的==

1).對于對象引用類型:“==”比較的是對象的內存地址。

比如說:

 String s1 = "Hello";
 String s2 = new String ("Hello");
System.out.println(s1 == s2);(false)

我們知道在使用new String時,會重新創(chuàng)建一個String對象,因此,自然s1和s2引用是指向兩個不同的地方,因此顯示為false.

2).對于基本類型數據(int,double等),其實比較的是它的值。

2、Java 中equals方法

1).equals是基本數據的包裝類型Integer,Float, Double等常用類具有的方法,它(這里為Integer類)的作用,在官方給的(Integer)文檔中,說的就是:進行對象間的比較,只有在滿足判斷條件,Integer所含的值和本對象的值相同時才會返回true。、

簡單來說,就是同類型,所含值相同即返回true.

Integer底層實現的時候用的是Integer.intValue();將兩個對象之間的比較變成了基本數據類型的值比較。

2).但是,在最底層Object類中,equals方法和==是沒有區(qū)別的。我們比較的還是兩個對象的內存地址。

眾所周知,我們所有的類都直接或間接地繼承自java.lang.Object類,因此我們可以通過重寫equals方法來實現我們自己想要的比較方法。之所以我們平常在用equals時,都是在比較對象中的值,是因為對equals進行了重寫,讓他去進行對象中的值比較(如最后上面的Integer類)。

所以我們也不能說,equals比較的就一定是對象的內容。根據業(yè)務邏輯的不同,是能夠衍生出更多不同方法的

以上就是Java的equsals和==的詳細內容,更多關于equsals和==的資料請關注腳本之家其它相關文章!

相關文章

最新評論