您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“String中equals怎么重寫”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“String中equals怎么重寫”這篇文章吧。
equals 方法作為 Object 類定義方法,Object 也是所有類的父類,這里面也包括 String , String 重寫 equals 方法,我們來看看怎么重寫的。
第一步我們判斷需要比較的兩個字符串的引號是否相等,引號如果相等直接返回 true, 不相等繼續下面的判斷
第二部再判斷此對象是否有 String 的實例,沒有的話返回 false,是的話兩個字符串長度再比較是否相等,不相等無需再比較。如果相等比較兩個字符串的字符是否相等,如果有一個不相等就返回 false。
疑惑點:
if (this == anObject) {
return true;
}
判斷語句如何返回 true?字符串比較的是堆空間嗎?String.intern()方法表示概念在不同 JDK 版本有不同區分
在 JDK1.7 后 intern 方法判斷運行常量池是否有指定的字符串,如果沒有就把字符串添加如常量池,返回其對象。
private void StringOverrideEquals(){
String s1 = "aaa";
String s2 = "aa" + new String("a");
String s3 = new String("aaa");
System.out.println(s1.intern().equals(s1));
System.out.println(s1.intern().equals(s2));
System.out.println(s3.intern().equals(s1));
}
以上是“String中equals怎么重寫”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。