HashSet類唯一特性之案例

2021-09-03 03:01:17 字數 1112 閱讀 2322

需求:編寫乙個程式,獲取10個1至20的隨機數,要求隨機數不能重複。並把最終的隨機數輸出到控制台。

分析:有random類建立隨機數物件

需要儲存10個隨機數,而且不能重複,所以我們用hashset集合

如果hashset的size是小於10就可以不斷的儲存,如果大於等於10就停止儲存

通過random類中的nextint(n)方法獲取1到20之間的隨機數,並將這些隨機數儲存在hashset集合中

遍歷hashset

實現:

public static void main(string args) 

//5,遍歷hashset

for (integer integer : hs)

}

需求:使用scanner從鍵盤讀取一行輸入,去掉其中重複字元, 列印出不同的那些字元

分析:建立scanner物件

建立hashset物件,將字元儲存,去掉重複

將字串轉換為字元陣列,獲取每乙個字元儲存在hashset集合中,自動去除重複

遍歷hashset,列印每乙個字元

​​​​​​​實現:

public static void main(string args) 

//4,遍歷hashset,列印每乙個字元

for(character ch : hs)

}

需求:將集合中的重複元素去掉

分析:建立list集合儲存若干個重複元素

單獨定義方法去除重複

列印一下list集合

​​​​​​​實現:

public static void main(string args) 

/* * 分析

* 去除list集合中的重複元素

* 1,建立乙個linkedhashset集合

* 2,將list集合中所有的元素新增到linkedhashset集合

* 3,將list集合中的元素清除

* 4,將linkedhashset集合中的元素新增回list集合中

*/public static void getsingle(listlist)

HashSet類唯一特性之案例

需求 在乙個集合中儲存了無序並且重複的字串,定義乙個方法,讓其有序 字典順序 而且還不能去除重複。分析 定義乙個list集合,並儲存重複的無序的字串 定義方法對其排序保留重複 列印list集合 實現 public static void main string args 定義方法,排序並保留重複 分...

HashSet保證元素唯一原理

1.hashset保證元素唯一原理 依賴於hashcode 和equals 方法 2.唯一原理 2.1 當hashset集合要儲存元素的時候,會呼叫該元素的hashcode 方法計算雜湊值 2.2 判斷該雜湊值對應的位置上,是否有元素 2.3 如果該雜湊值位置上沒有元素,那麼就直接儲存該元素 2.4...

HashSet保證資料唯一的原理

hashset 的底層判斷原理 資料結構是雜湊表,執行緒是非同步的.保證元素唯一性的原理 判斷元素的hascode值,若hashcode值相同,則用equals 方法來判斷,若還相同則這兩個值是相等的,則不訪問這個物件 是通過元素的兩個方法hashcode 和equals 方法來完成 對於判斷元素是...