這篇文章主要講解了“怎么使用Java list集合”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“怎么使用Java list集合”吧!
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供興山網(wǎng)站建設(shè)、興山做網(wǎng)站、興山網(wǎng)站設(shè)計、興山網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、興山企業(yè)網(wǎng)站模板建站服務(wù),10年興山做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
list集合常用方法
//添加
void add(String item)
//指定位置插入元素,后面的元素都往后移一個元素。
void add(int index, E element)
//在指定的位置中插入c集合全部的元素,如果集合發(fā)生改變,則返回true,否則返回false
boolean addAll(int index, Collection extends E> c)
//返回list集合中指定索引位置的元素
E get(int index)
//返回list集合中第一次出現(xiàn)o對象的索引位置,如果list集合中沒有o對象,那么就返回-1
int indexOf(Object o)
//返回此列表元素的列表迭代器
ListIterator listIterator()
//從指定位置開始,返回此列表元素的列表迭代器
ListIterator listIterator(int index)
//刪除指定索引的對象
E remove(int index)
//在索引為index位置的元素更改為element元素
E set(int index, E element)
//返回從索引fromIndex到toIndex的元素集合,包左不包右
List subList(int fromIndex, int toIndex)
方法的使用
以ArrayList舉幾個方法的示例:
List person=new ArrayList<>();
person.add("jackie"); //索引為0 //.add(e)
person.add("peter"); //索引為1
person.add("annie"); //索引為2
person.add("martin"); //索引為3
person.add("marry"); //索引為4
person.remove(1); //.remove(index)
person.remove("marry"); //.remove(Object o)
String per="";
per=person.get(1);
System.out.println(per); ////.get(index)
for (int i = 0; i < person.size(); i++) {
System.out.println(person.get(i)); //.get(index)
}
常用實現(xiàn)類ArrayList、LinkedList和Vector之間的關(guān)系和區(qū)別
1.ArrayList底層是用數(shù)組實現(xiàn)的,大家可以認為ArrayList是一個可改變大小的數(shù)組。其數(shù)組中查詢和賦值比較快,因為可以直接通過數(shù)組下標訪問指定位置;
2.LinkedList底層是通過雙向鏈表實現(xiàn)的。所以,LinkedList和ArrayList之前的區(qū)別主要就是數(shù)組和鏈表的區(qū)別。鏈表中刪除和增加比較快,因為可以直接通過修改鏈表的指針(Java中并無指針,這里可以簡單理解為指針。其實是通過Node節(jié)點中的變量指定)進行元素的增刪。
3.Vector和ArrayList一樣,都是通過數(shù)組實現(xiàn)的,但是Vector是線程安全的。和ArrayList相比,其中的很多方法都通過同步(synchronized)處理來保證線程安全。
綜上幾個特點:
ArrayList查詢添加速度快,線程不安全;LinkedList修改刪除速度快,線程不安全;Vector線程安全,但效率低。
感謝各位的閱讀,以上就是“怎么使用Java list集合”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對怎么使用Java list集合這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!