色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java常用集合類功能 區別和性能

衛若男1年前8瀏覽0評論

java常用集合類是java開發中必不可少的一部分,它們有著不同的功能和性能特點,讓我們來一一了解一下。

首先是ArrayList。ArrayList是一種動態數組類型,其基本功能是添加和刪除元素,可以用get方法獲取元素,也可以使用iterator遍歷整個list。

ArrayListlist = new ArrayList<>();
list.add("hello");
list.add("world");
list.remove("hello");
for (String str : list) {
System.out.println(str);
}

接下來是LinkedList。LinkedList是一種雙向鏈表類型,可以在任何位置添加和刪除元素,但獲取元素的效率比ArrayList要低,因為需要從頭或尾開始遍歷尋找元素。

LinkedListlist = new LinkedList<>();
list.add("hello");
list.add("world");
list.remove("hello");
for (String str : list) {
System.out.println(str);
}

再來看看HashSet。HashSet是一種基于哈希表實現的Set集合類型,具有快速的添加、刪除、查找元素的能力,但是不保證元素的順序。

HashSetset = new HashSet<>();
set.add("hello");
set.add("world");
set.remove("hello");
for (String str : set) {
System.out.println(str);
}

最后是TreeSet。TreeSet是一種基于紅黑樹實現的Set集合類型,可以保證元素按照自然排序或自定義排序規則排列。

TreeSetset = new TreeSet<>();
set.add("hello");
set.add("world");
set.remove("hello");
for (String str : set) {
System.out.println(str);
}

從性能上來說,ArrayList和LinkedList都是線性的,但ArrayList在添加和刪除元素時性能比LinkedList要更好。HashSet和TreeSet的添加、刪除、查找元素都是常數級別的,但是在遍歷時TreeSet的性能比HashSet要高。