天天看點

java類集架構(ArrayList,LinkedList,Vector差別)

主要分兩個接口:collection和Map

主要分三類:集合(set)、清單(List)、映射(Map)

1.集合:沒有重複對象,沒有特定排序方式

2.清單:對象按索引位置排序,可以有重複對象

3.映射:有一個鍵對象和一個值對象,鍵不可重複,值可以重複

這裡我們介紹List

list是接口,linklist和arraylist是list的實作類

linklist是用的連結清單來實作的,arraylist是用數組來實作的

ArrayList:缺點:記憶體使用量要大一些,添加删除元素效率較低。元素随機通路的效率較高。

LinkedList:相反。

注:

vector和ArrayList的實作方法一緻,都是用數組實作,

  差別:vector是線程安全,ArrayList是線程不安全

    vector可以實作枚舉周遊,arrayList不可以

    vector已經被ArrayList取代,1.2版本後出現ArrayList,

import java.util.ArrayList;

public class main {
	
	public static void main(String args []) {
		//list定義
		ArrayList<String> ary=new ArrayList<String>();
		//list添加元素
		ary.add("ab");
		ary.add("cd");
		ary.add("ef");
		//擷取元素值
		String s=ary.get(1);//ArrayList從0位開始存放,和數組一樣
		System.out.println(s);
		//删除元素值
		ary.remove(0);//移除前面的元素後,後面的自動向前補進
		//傳回目前清單裡元素個數
		ary.size();
	}
	
}