2014年4月5日 java集合框架总结2--List接口及其子类
List接口
Collection接口的子接口,可以使用Collection中全部方法。
有序集合,元素有索引,元素可以重復
List:特有的常見方法:有一個共性特點就是都可以操作角標。
1,添加
??? void add(index,element):
?? boolean addAll(int index, Collection c):
2,刪除;
??? Object remove(index):
3,修改:
??? Object set(index,element):
4,獲取:
??? Object get(index):
??? int indexOf(object):
??? int lastIndexOf(object):
??? List subList(from,to):
import java.util.ArrayList; import java.util.List;/*** List接口及其子類* 2014-4-6* @author Administrator**/ public class ListDemo {/*** @param args*/public static void main(String[] args) {List l1=new ArrayList();List l2=new ArrayList();show(l1,l2);}public static void show(List l1,List l2){//添加元素 l1.add(0, "123");l1.add(1, "mno");l1.add(2, "abc");l1.add(3, "mno");System.out.println(l1);l2.add("789");l2.add("456");l2.addAll(1,l1 );System.out.println(l2);//刪除l2.remove(2);System.out.println(l2);//修改l2.set(4, "ijk");System.out.println(l2);//獲取l2.add(3,"ijk");System.out.println(l2);System.out.println(l2.get(3));System.out.println(l2.indexOf("456"));//返回此列表首次出現元素的位置System.out.println(l2.indexOf("ijk"));//返回此列表最后出現元素的位置System.out.println(l2.lastIndexOf("ijk"));//返回從索引1開始(包含)到索引2位置前List l3=l2.subList(1, 4);System.out.println(l3);}}程序運行結果
[123, mno, abc, mno] [789, 123, mno, abc, mno, 456] [789, 123, abc, mno, 456] [789, 123, abc, mno, ijk] [789, 123, abc, ijk, mno, ijk] ijk -1 3 5 [123, abc, ijk] ListIteratorIterator的子接口,專供List接口使用
元素所在容器容器有索引,可以逆向遍歷
特有方法:
boolean hasPrevious()
Object previous()
void add(element)
List接口下的常用集合類
Vector:內部是數組數據結構,多個線程是同步的。增刪,查詢都很慢!(同步是以犧牲效率為代價的)
ArrayList:內部是數組數據結構,多個線程是不同步的。替代了Vector。查詢的速度快。
LinkedList:內部是鏈表數據結構,多個線程是不同步的。增刪元素的速度很快。
Vector類下的子類Stack
Stack:內部是棧數據結構,先進后出
轉載于:https://www.cnblogs.com/shangshicc/p/3649023.html
總結
以上是生活随笔為你收集整理的2014年4月5日 java集合框架总结2--List接口及其子类的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 涨知识!想达到网页的标准原来只用做到这些
- 下一篇: webService学习记录