Integer大小比較的一些事

2021-08-26 07:07:41 字數 730 閱讀 2704

首先如下**:

public class test 

}

執行一下,在控制台得到的結果是這樣的

a==b : true

a.equals(b) : true

當是當我們變換一下值

public class test 

}

執行一下,控制台的結果又是

a==b : false

a.equals(b) : true

檢視原始碼發現:

實際上在我們用integer a = 數字;來賦值的時候integer這個類是呼叫的public static integer valueof(int i)這個方法。

public static integer valueof(int i)
我們來看看valueof(int i)的**,可以發現他對傳入引數i做了乙個if判斷。在-128<=i<=127的時候是直接用的int原始資料型別,而超出了這個範圍則是new了乙個物件。我們知道"=="符號在比較物件的時候是比較的記憶體位址,而對於基本資料型別是直接比對的資料值。那麼這個問題就解決了。

至於為什麼用int型的時候值會在-128<=i<=127範圍呢呢?我們知道八位二進位制的表示的範圍正好就是-128到127。

Integer大小比較的一些事

首先如下 public class test 執行一下,在控制台得到的結果是這樣的 a b true a.equals b true 當是當我們變換一下值 public class test 執行一下,控制台的結果又是 a b false a.equals b true 檢視原始碼發現 實際上在我們...

一些人,一些事,一些

我覺得這是國內it企業浮躁和傳統的官本位性質決定的,導致國內企業都本末倒置。要想改變命運,我覺得有以下出路 1.不做技術了,改做混混 混混的概念很廣泛的,比如銷售 經理 幹部 皮包公司之類其實都屬於這類。中國就是這樣,越浮越掙錢,只有混混才能發財。要不更進一步,做流氓,廣義的流氓,也很不錯。2.專心...

最近的一些事

前段時間,工作不是很忙,閒暇的時候,做了很多自己喜歡做的事情。組內乙個技術很厲害的員工,要離職了,給我們分享了他的很多東西,我們收穫很大。有的同學已經開始自己創業了,想邀請我加入,但是我現在確實還沒有那個信心。自己買了很多書,再一次把自己定位為乙個技術人員,開始堅持不懈的專研技術。身體素質大不如以前...