摘要:在寫時遇到比較一個對象的字符串和一個字符串是否相等的問題,遇到了一些坑。在這段代碼時和的值都是但是他們用比較時確實不相等的。
在寫java時遇到比較一個對象的字符串和一個字符串是否相等的問題,遇到了一些坑。
在這段代碼時,name1和name2的值都是"name",但是他們用==比較時確實不相等的。
首先,在java中String是一個對象,在用==比較兩個String對象的引用時,是比較兩個對象引用的值是否相等,就是比較是否指向同一個對象。name1在堆上創建了一個對象,name2也在堆上創建了一個對象,雖然對象的值都相同,但是內存地址卻是不一樣,是兩個不同的對象,name1指向的對象和name2指向的對象不同,所以==判斷返回的時false;
但是這個判斷式卻是true,因為java在第一次遇到“name”這個字符串時,回去緩存區查看有沒有“name”這個字符串常量,沒有就創建,再把這個對象賦值給name1,當name2 = "name",時,緩存區已經有"name"這個字符串常量了,所以直接把字符串常量賦值給name2,因此他們的引用對象是相同的,所以返回true.
在這個表達式中,雖然name1使用"name"字符串對象來創建的,但他是一個新的對象,只是他的值和"name"對象的值是相同的,所以name1和name2是不同的對象,所以返回false.
如果要比較兩個對象的值是否相等,應該使用equals
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/77231.html
摘要:相等判斷符介紹相等判斷符用于比較基本數據類型和引用類型數據當比較基本數據類型的時候比較的是數值當比較引用類型數據時比較的是引用指針判斷基本類型是否相等首先基本數據類型指的是中的八大數據類型這八大基本數據類型有個共同的特點是它們在內存中是有具相等判斷符==介紹 ? ==相等判斷符用于比較基本數據類型和引用類型數據. 當比較基本數據類型的時候比較的是數值, 當比較引用類型數據時比較的是引用(指...
摘要:相等判斷符介紹相等判斷符用于比較基本數據類型和引用類型數據當比較基本數據類型的時候比較的是數值當比較引用類型數據時比較的是引用指針判斷基本類型是否相等首先基本數據類型指的是中的八大數據類型這八大基本數據類型有個共同的特點是它們在內存中是有具相等判斷符==介紹 ==相等判斷符用于比較基本數據類型和引用類型數據. 當比較基本數據類型的時候比較的是數值, 當比較引用類型數據時比較的是引用(指針...
摘要:相等判斷符介紹相等判斷符用于比較基本數據類型和引用類型數據當比較基本數據類型的時候比較的是數值當比較引用類型數據時比較的是引用指針判斷基本類型是否相等首先基本數據類型指的是中的八大數據類型這八大基本數據類型有個共同的特點是它們在內存中是有具相等判斷符==介紹 ==相等判斷符用于比較基本數據類型和引用類型數據. 當比較基本數據類型的時候比較的是數值, 當比較引用類型數據時比較的是引用(指針...
摘要:從行,可以看出字符串的存儲結構是字符數組。如果不相等,則返回兩字符的編碼值的差值第行當前字符串和另一個字符串,依次字符比較。如果均相等,則返回兩個字符串長度的差值所以要排序,肯定先有比較能力,即實現接口。摘要: 原創出處 https://www.bysocket.com 「公眾號:泥瓦匠BYSocket 」歡迎關注和轉載,保留摘要,謝謝!這是泥瓦匠的第103篇原創《程序兵法:Java Str...
摘要:并把最終的隨機數輸出到控制臺。方法,在集合中如何存儲元素取決于方法的返回值返回,集合中只有一個元素。創建集合對象,傳入比較器。 1_HashSet存儲字符串并遍歷 A:Set集合概述及特點 通過API查看即可 B:案例演示 HashSet存儲字符串并遍歷 import java.util.HashSet; public class Demo1_HashSet { p...
摘要:中,任何未處理的受檢查異常強制在子句中聲明。運行時多態是面向對象最精髓的東西,要實現運行時多態需要方法重寫子類繼承父類并重寫父類中已 1、簡述Java程序編譯和運行的過程:答:① Java編譯程序將Java源程序翻譯為JVM可執行代碼--字節碼,創建完源文件之后,程序會先被編譯成 .class 文件。② 在編譯好的java程序得到.class文件后,使用命令java 運行這個 .c...
閱讀 2109·2023-04-25 17:23
閱讀 2922·2021-11-17 09:33
閱讀 2517·2021-08-21 14:09
閱讀 3595·2019-08-30 15:56
閱讀 2608·2019-08-30 15:54
閱讀 1628·2019-08-30 15:53
閱讀 2132·2019-08-29 13:53
閱讀 1147·2019-08-29 12:31