/**
* 利用arraylist和linkedlist對10萬個資料進行插入和查詢,比較效率
*/arraylistlist = new arraylist<>();
long start = system.currenttimemillis();
random random = new random();
for(int i = 0;i < 100000;i++)
long end = system.currenttimemillis();
long time = end - start;
system.out.println("arraylist"+"插入資料時間為:"+time+"ms");
long start1 = system.currenttimemillis();
for(int j = 0;j < 100000;j++)
long end1 = system.currenttimemillis();
long time1 = end1 - start1;
system.out.println("arraylist"+"查詢資料時間為:"+time1+"ms");
linkedlistlist1 = new linkedlist<>();
long start2 = system.currenttimemillis();
random random1 = new random();
for(int i = 0;i < 100000;i++)
long end2 = system.currenttimemillis();
long time2 = end2 - start2;
system.out.println("linkedlist插入資料時間為:"+time2+"ms");
long start3 = system.currenttimemillis();
for(int j = 0;j < 100000;j++)
long end3 = system.currenttimemillis();
long time3 = end3 - start3;
system.out.println("linkedlist"+"查詢資料時間為:"+time3+"ms");
/**
* 10萬資料統計每個資料出現次數並列印
* 利用hashmap的特點:key不能重複(存資料),value可以重複(存次數)
*/hashmaphashmap = new hashmap<>();
arraylistlist = new arraylist<>();
random random = new random();
for(int i = 0;i < 100000;i++)
iteratoriterator = list.iterator();
while(iterator.hasnext())
hashmap.put(num,hashmap.get(num)+1);
}iterator> itr = hashmap.entryset().iterator();
while(itr.hasnext())
/**
* 10萬資料統計第乙個重複的資料並列印
*/hashmaphashmap = new hashmap<>();
arraylistlist = new arraylist<>();
random random = new random();
for(int i = 0;i < 100000;i++)
iteratoriterator = list.iterator();
while(iterator.hasnext())else
}
/**
* 10萬資料去重
* 利用hashset的特點:儲存單個值,且資料不能重複
*/hashsethashset = new hashset<>();
arraylistlist = new arraylist<>();
random random = new random();
for(int i = 0;i < 7;i++)
system.out.println("列印陣列:");
system.out.println(list.tostring());
for(integer e:list)
iteratoritr = hashset.iterator();
system.out.println("列印hashset:");
while(itr.hasnext())
system.out.println();
}
集合框架之 set集合
物件重複是指物件裡面的變數的值都相等,並不定是位址。list集合儲存的型別是基礎型別還比較好辦,直接把list集合轉換成set集合就會自動去除。當set集合儲存的是物件型別時,需要在物件的實體類裡面重寫public boolean equals object obj 和 public int has...
集合框架之Set TreeSet
treeset是set介面的實現類,底層資料結構是二叉樹。treeset的儲存方式按照一定的規則。儲存規則讓資料表現出自然順序。新增乙個新元素t的儲存步驟 1 如果集合無元素,t直接加入 如果集合有元素,t和根節點比較 2 如果t小於根節點 把t放到根節點的左子樹上 重複1 3步驟 3 t大於根節點...
集合框架之List
collection 為頂層集合介面,其下面分有list和set介面。list集合的特點 元素有序 可重複。可以通過索引index來增加 刪除元素。增 add addall add index,某元素 add index,某集合 刪 clear remove removeall remove ind...