如題:集合去重removeall是少不了的,set效率吊打list,有重複集業務沒關係,removeall()裡面用set總沒錯吧。
setset1 = new hashset();
setset2 = new hashset();
listlist1 = new arraylist();
listlist2 = new arraylist();
for(int i=0;i<100000;i++)
system.out.println(new date());
set1.removeall(set2);
system.out.println(new date());
list1.removeall(set2);
system.out.println(new date());
set1.removeall(list2);
system.out.println(new date());
list1.removeall(list2);
system.out.println(new date());
執行結果如下圖:
原因有空再說。
順便提一句:
mybatis 返回得list是arraylist,可以getclass().getname()一下。
原始碼裡面沒有set介面,所以一般自己將list轉set就可以了,這個效率很快,100w的幾秒就好了。
5 03 集合框架 set集合
一 set集合概述 乙個不包含重複元素的 collection。更確切地講,set 不包含滿足e1.equals e2 的元素對e1和e2,並且最多包含乙個 null 元素。正如其名稱所暗示的,此介面模仿了數學上的 set 抽象。在所有構造方法以及 add equals 和 hashcode 方法的...
Java集合中的集 Set
set也是乙個介面,他實現了collection和iterable兩個介面,因此,set是乙個集合,同時,我們也可以使用迭代器遍歷set。set是乙個介面,我們當然不能例項化介面,所以,我們一般實際使用的set有 hashset hashset儲存元素的策略,是使用一中稱為 雜湊表 的資料結構,因此...
08 集合對映 set
實際上,set這種集合對映我們在前面已經學習關聯關係對映時已經用過了,實體類 實體類都在在資料庫中有對應的表 中有一對多或者多對多的關係,並且我們可以通過某一側訪問到另一側,就是通過在類中設定 set集合並配置set對映來實現的。在hibernate配置中有兩種資料型別,一種是值型別,另一種是實體型...