代碼如圖:
我明明想象着存儲不應該是1到30,怎麼是有序的了呢?
百度後專業人士回答引用:https://www.zhihu.com/question/28414001/answer/40733996
但是對說的範圍[0-2^32-1]不太理解
我認爲"1<<16"是右移16位,相當於2^15左右,這不是跟"[ 0-2 ^ 32 - 1]"不一樣了嗎?
自己測試了一下,在[-2^16 到 2^16-1]左右是,成立的,在這個範圍外是不成立的,上圖:
結論:
HashSet存放Integer類型時存儲範圍在[-2^16 - 2^16-1]左右是有序的,在這個範圍外是無序的,而不是"[ 0-2 ^ 32 - 1]"
分享目的
,致敬源,記錄這個特性,並希望有不對的地方能得到指正,不斷提高自己;