java equals函數(shù)用法詳解
更新時間:2012年11月30日 10:42:14 投稿:whsnow
java 中equals函數(shù)的使用方法是廣大java愛好者所關(guān)心的一個話題,本文將詳細(xì)介紹其使用方法,需要了解的朋友可以參考下
equals函數(shù)在基類object中已經(jīng)定義,源碼如下
復(fù)制代碼 代碼如下:
public boolean equals(Object obj) {
return (this == obj);
}
從源碼中可以看出默認(rèn)的equals()方法與“==”是一致的,都是比較的對象的引用,而非對象值(這里與我們常識中equals()用于對象的比較是相餑的,原因是java中的大多數(shù)類都重寫了equals()方法,下面已String類舉例,String類equals()方法源碼如下:)
[java]
復(fù)制代碼 代碼如下:
/** The value is used for character storage. */
private final char value[];
/** The offset is the first index of the storage that is used. */
private final int offset;
/** The count is the number of characters in the String. */
private final int count;
[java] view plaincopyprint?
public boolean equals(Object anObject) {
if (this == anObject) {
return true;
}
if (anObject instanceof String) {
String anotherString = (String)anObject;
int n = count;
if (n == anotherString.count) {
char v1[] = value;
char v2[] = anotherString.value;
int i = offset;
int j = anotherString.offset;
while (n-- != 0) {
if (v1[i++] != v2[j++])
return false;
}
return true;
}
} //www.software8.co
return false;
}
String類的equals()非常簡單,只是將String類轉(zhuǎn)換為字符數(shù)組,逐位比較。
相關(guān)文章
Java中sleep()與wait()的區(qū)別總結(jié)
因?yàn)樽罱鼘W(xué)習(xí)時正好碰到這兩個方法,就查閱相關(guān)資料,并通過程序?qū)崿F(xiàn),進(jìn)行區(qū)別總結(jié)一下,所以下面這篇文章主要給大家總結(jié)介紹了關(guān)于Java中sleep()與wait()區(qū)別的相關(guān)資料,需要的朋友可以參考,下面來一起看看吧。2017-05-05
Spring HandlerInterceptor實(shí)現(xiàn)原理代碼解析
這篇文章主要介紹了Spring HandlerInterceptor實(shí)現(xiàn)原理代碼解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
Java根據(jù)實(shí)體生成SQL數(shù)據(jù)庫表的示例代碼
這篇文章主要來和大家分享一個Java實(shí)現(xiàn)根據(jù)實(shí)體生成SQL數(shù)據(jù)庫表的代碼,文中的實(shí)現(xiàn)代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-07-07
SpringBoot2.1.3修改tomcat參數(shù)支持請求特殊符號問題
最近遇到一個問題,比如GET請求中,key,value中帶有特殊符號,請求會報(bào)錯。接下來通過本文給大家分享解決SpringBoot2.1.3修改tomcat參數(shù)支持請求特殊符號 ,需要的朋友可以參考下2019-05-05
Java數(shù)據(jù)結(jié)構(gòu)之哈夫曼樹概述及實(shí)現(xiàn)
文中詳細(xì)講了關(guān)于Java哈夫曼樹的概述以及用Java實(shí)現(xiàn)的方法,對各位正在學(xué)習(xí)java數(shù)據(jù)結(jié)構(gòu)的小伙伴們有很大的幫助喲,需要的朋友可以參考下2021-05-05
Java 單鏈表數(shù)據(jù)結(jié)構(gòu)的增刪改查教程
這篇文章主要介紹了Java 單鏈表數(shù)據(jù)結(jié)構(gòu)的增刪改查教程,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10

