有序, 可重複
void add(int index, e element)
boolean addall(int index, collection extends e> c)
listli=new arraylist<>();
li.add("as");
li.add("xz");
li.add("qw");
system.out.println(li);
listli3=new arraylist<>();
li.addall(2,li3);//將li3加到2的下標處
e remove(int index)
li.add(2,"zxx");
system.out.println(li);
system.out.println(li.remove(li.indexof("zxx")));
e set(int index, e element)
li.set(li.indexof("xz"), "阿興");//將兩個方法結合起來先查詢下標,再修改
e get(int index)
string ss=li.get(0);
//listinteratorlistiterator()
listiteratorlli=li.listiterator();
while(lli.hasnext())
listiterator< e > listiterator(int index)下面實現反輸出時用到獲取e get(int index)
system.out.println(li.get(0));
int indexof(object o) //返回下標
int lastindexof(object o) //從後往前找o的下標
system.out.println(li.lastindexof("qw"));//從後往前找qw的下標
list sublist(int fromindex, int toindex)
//取子集合,左閉右開,從第幾個開始,第幾個結尾
listsub=li.sublist(1, 3);//左閉右開,第幾個開始,第幾個結尾
system.out.println(sub);
string li2=li.toarray(new string{});
for (string string : li2)
previous()找前乙個元素 haspervious() 判斷前一位是否有數
與之相反的是next()和hasnext() 詳情參考下面案例:
將所有的王昭君取出來,且逆序列印
s=lli.previous();//找前乙個元素,有侷限,因為迭代器遍歷最開始為0,沒有前乙個元素
system.out.println(s);
利用列表迭代器實現反輸出:
listiteratorlli2=li.listiterator(li.size());
//因為它訪問的是前乙個元素,所以用的不是size-1
//將迭代器指向最後乙個的後一位
while(lli2.hasprevious())
方法一:
//利用迭代器實現刪除(迭代器查詢、迭代器刪除)
listiteratorl=li.listiterator();
while(l.hasnext())
system.out.println(li);
方法二
//利用for迴圈和li集合刪除元素
string arrs=li.toarray(new string{});
for(int i=0;i如果是物件的刪除呢?
ii2=l.listiterator();
/*while(ii2.hasnext())
}*/
listls=new arraylist();
ls.add("楊貴妃");
ls.add("貂蟬");
ls.add("西施");
ls.add("王昭君1");
ls.add("王昭君2");
ls.add("王昭君3");
ls.add("王昭君4");
ls.add("貂蟬");
ls.add("催化");
//目的將所有的王昭君取出來,且逆序列印
//子集合:
listlss=ls.sublist(ls.indexof("王昭君1"), ls.lastindexof("貂蟬"));
system.out.println(ls);
listiteratori=lss.listiterator(lss.size());//逆向輸出
while(i.hasprevious())
引言
listlist=new arraylist<>();
list.add("xinxi");
list.add("小青");
list.add("xinxi");
list.add("小青");
list.add("xinxi");
//氣泡排序
integer arr=;
for(int i=0;i<5;i++)
} }system.out.println(arrays.deeptostring(arr));
簡單選擇 盡可能畫圖理解 跟冒泡不同
集合 List介面
有序的 collection 也稱為序列 此介面的使用者可以對列表中每個元素的插入位置進行精確地控制。使用者可以根據元素的整數索引 在列表中的位置 訪問元素,並搜尋列表中的元素 與 set 不同,列表通常允許重複的元素 void add int index,e element e remove in...
Collection介面之List集合類的使用
collection介面其中包含一些主要的常見方法,如 size isempty clear contains add remove 同時,collection 集合類中還存在 list 與set 以及map 集合類,統稱為 collection 三大集合類。這三種物件與本身的 collection...
集合框架之List
collection 為頂層集合介面,其下面分有list和set介面。list集合的特點 元素有序 可重複。可以通過索引index來增加 刪除元素。增 add addall add index,某元素 add index,某集合 刪 clear remove removeall remove ind...