您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么使用Java list集合”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“怎么使用Java list集合”吧!
list集合常用方法
//添加
void add(String item)
//指定位置插入元素,后面的元素都往后移一個(gè)元素。
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<E> listIterator()
//從指定位置開始,返回此列表元素的列表迭代器
ListIterator<E> listIterator(int index)
//刪除指定索引的對象
E remove(int index)
//在索引為index位置的元素更改為element元素
E set(int index, E element)
//返回從索引fromIndex到toIndex的元素集合,包左不包右
List<E> subList(int fromIndex, int toIndex)
方法的使用
以ArrayList舉幾個(gè)方法的示例:
List<String> 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)
}
常用實(shí)現(xiàn)類ArrayList、LinkedList和Vector之間的關(guān)系和區(qū)別
1.ArrayList底層是用數(shù)組實(shí)現(xiàn)的,大家可以認(rèn)為ArrayList是一個(gè)可改變大小的數(shù)組。其數(shù)組中查詢和賦值比較快,因?yàn)榭梢灾苯油ㄟ^數(shù)組下標(biāo)訪問指定位置;
2.LinkedList底層是通過雙向鏈表實(shí)現(xiàn)的。所以,LinkedList和ArrayList之前的區(qū)別主要就是數(shù)組和鏈表的區(qū)別。鏈表中刪除和增加比較快,因?yàn)榭梢灾苯油ㄟ^修改鏈表的指針(Java中并無指針,這里可以簡單理解為指針。其實(shí)是通過Node節(jié)點(diǎn)中的變量指定)進(jìn)行元素的增刪。
3.Vector和ArrayList一樣,都是通過數(shù)組實(shí)現(xiàn)的,但是Vector是線程安全的。和ArrayList相比,其中的很多方法都通過同步(synchronized)處理來保證線程安全。
綜上幾個(gè)特點(diǎn):
ArrayList查詢添加速度快,線程不安全;LinkedList修改刪除速度快,線程不安全;Vector線程安全,但效率低。
感謝各位的閱讀,以上就是“怎么使用Java list集合”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對怎么使用Java list集合這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。