JAVA hashset常用方法和原始碼分析

2021-09-02 18:28:01 字數 1026 閱讀 8988

public static void main(string  args)

* 其中map 的資料型別為hashmap,value值為object

* private transient hashmapmap;

*/hashsethashset=new hashset();

/**hashset插入元素本質是對hashmap插入鍵值對,其中的value值為object

* 因此hashset插入的值為key,則hashset的特點為:

* 1.不能重複

* 2.只能有乙個null值

*/hashset.add("zs");//增加元素

hashset.add("ls");

hashset.add("zy");

/**原始碼分析:

* 底層呼叫hashmap的put方法

* public boolean add(e e)

* private static final object present = new object();**/

hashset.remove("zy");//刪除元素

/*** 底層呼叫hashmap的remove方法

** public boolean remove(object o)

*///遍歷方式

system.out.println("增強for迴圈");

for (string str:hashset)

//迭代器遍歷

system.out.println("迭代器遍歷");

iteratoriterator = hashset.iterator();

while (iterator.hasnext())

/*原始碼分析:

public iteratoriterator()

底層呼叫hashmap的對key值得遍歷方法

*/system.out.println( hashset.size());//計算儲存元素的個數

}

java hashset的那些事

hashset不能往集合中放置相同的元素.而如何判斷往集合中放置的元素是否相同,則是通過object類的兩個 hashcode 和equals 方法來確定的.具體說明如下 具體的判斷過程為 當使用hashset時,hashcode 方法首先就會被呼叫來判斷已在hashset中的物件的hash cod...

java HashSet原始碼簡單剖析

1.首先明確hash演算法 既然都是hashset集合了,肯定與hash演算法有關,我的理解就像是在查詢新華字典 雜湊表 一樣,按照拼音 雜湊值 先找到在哪頁 哪個儲存區域 再在該頁 區域 查詢。比全部遍歷提高了查詢效率。2.hashset集合是如何保證唯一性的?通過追溯add 方法,了解到底層為h...

mysql常用方法 mysql 常用方法

處理字元 1 concat aaa bbb ccc 拼接字串,oracle也有這個方法不過只能拼接2個,而且一般用 mysql中 表示或。相當於or 2 ifnull name,aaa 當name null時,返回 aaa 3.upper aaa lower aaa 變為大寫,小寫 4.substr...