閱讀613 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Java類集--List接口

Collection下分為很多的子接口,其中有一個List接口,List接口中可以存放任意的數據。而且在List接口中內容是允許重複的。List接口的功能要比Collection接口強大很多,因為大量的擴充了Collection接口的操作。

List接口的擴展方法:


List接口的常用子類--ArrayList


如果要想使用接口,則肯定要使用對象的多態性進行實例化的操作。ArrayList是List中最常用的子類。
添加數據:
import java.util.ArrayList ;
import java.util.List ;
import java.util.Collection ;
public class ArrayListDemo01{
	public static void main(String args[]){
		List<String> allList = null ;
		Collection<String> allCollection = null ;
		allList = new ArrayList<String>() ;	// 指定操作的泛型為String
		allCollection = new ArrayList<String>() ;	// 指定一個集合
		allList.add("Hello") ;	// 此方法由Collection接口而來
		allList.add(0,"World") ;	// 在第一個位置上添加新的內容
		System.out.println(allList) ;
		allCollection.add("LXH") ;	// 向Collection中加入內容
		allCollection.add("www.mldn.cn") ;
		allList.addAll(allCollection) ;
		allList.addAll(0,allCollection) ;
		System.out.println(allList) ;
	}
};

既然可以增加數據,那麼就可以刪除數據:List中存在兩種刪除:根據對象內容刪除、根據對象的編號刪除。
import java.util.ArrayList ;
import java.util.List ;
public class ArrayListDemo02{
	public static void main(String args[]){
		List<String> allList = null ;
		allList = new ArrayList<String>() ;	// 指定操作的泛型為String
		allList.add("Hello") ;	// 此方法由Collection接口而來
		allList.add(0,"World") ;	// 在第一個位置上添加新的內容
		allList.add("MLDN") ;	// 向Collection中加入內容
		allList.add("www.mldn.cn") ;
		allList.remove(0) ; // 刪除第一個元素,指定刪除的位置
		allList.remove("Hello") ;	// 此方法由Collection接口繼承而來
		System.out.println(allList) ;
	}
};


import java.util.ArrayList ;
import java.util.List ;
public class ArrayListDemo03{
	public static void main(String args[]){
		List<String> allList = null ;
		allList = new ArrayList<String>() ;	// 指定操作的泛型為String
		allList.add("Hello") ;	// 此方法由Collection接口而來
		allList.add("Hello") ;	// 此方法由Collection接口而來
		allList.add(0,"World") ;	// 在第一個位置上添加新的內容
		allList.add("MLDN") ;	// 向Collection中加入內容
		allList.add("www.mldn.cn") ;
		System.out.print("由前向後輸出:") ;
		for(int i=0;i<allList.size();i++){
			System.out.print(allList.get(i) + "、") ;
		}
		System.out.print("\n由後向前輸出:") ;
		for(int i=allList.size()-1;i>=0;i--){
			System.out.print(allList.get(i) + "、") ;
		}
	}
};

此輸出方式是List接口所獨有的,而其他接口是沒有的,尤其是Collection中是沒有根據索引取出內容的操作。
import java.util.ArrayList ;
import java.util.List ;
public class ArrayListDemo04{
	public static void main(String args[]){
		List<String> allList = null ;
		allList = new ArrayList<String>() ;	// 指定操作的泛型為String
		allList.add("Hello") ;	// 此方法由Collection接口而來
		allList.add(0,"World") ;	// 在第一個位置上添加新的內容
		allList.add("MLDN") ;	// 向Collection中加入內容
		allList.add("www.mldn.cn") ;
		String str[] = allList.toArray(new String[]{}) ;	// 指定好類型
		System.out.print("指定數組類型:") ;
		for(int i=0;i<str.length;i++){
			System.out.print(str[i] + "、") ;
		}
		System.out.print("\n返回對象數組:") ;
		Object obj [] = allList.toArray() ;	// 返回Object類型
		for(int i=0;i<obj.length;i++){
			String temp = (String)obj[i] ;	// 進行向下轉型
			System.out.print(temp + "、") ;
		}
	}
};


import java.util.ArrayList ;
import java.util.List ;
public class ArrayListDemo05{
	public static void main(String args[]){
		List<String> allList = null ;
		allList = new ArrayList<String>() ;	// 指定操作的泛型為String
		System.out.println("集合操作前是否為空?" + allList.isEmpty()) ;
		allList.add("Hello") ;	// 此方法由Collection接口而來
		allList.add(0,"World") ;	// 在第一個位置上添加新的內容
		allList.add("MLDN") ;	// 向Collection中加入內容
		allList.add("www.mldn.cn") ;
		System.out.println(allList.contains("Hello")?"\"Hello\"字符串存在!" : "\"Hello\"字符串不存在!") ;
		List<String> allSub = allList.subList(2,3) ;	// 字符串截取
		System.out.println("集合截取:") ;
		for(int i=0;i<allSub.size();i++){
			System.out.print(allSub.get(i) + "、") ;
		}
		System.out.println("MLDN字符串的位置:" + allList.indexOf("MLDN")) ;
		System.out.println("集合操作後是否為空?" + allList.isEmpty()) ;
	}
};

挽救的子類:Vector


import java.util.Vector ;
import java.util.List ;
public class VectorDemo01{
	public static void main(String args[]){
		List<String> allList = null ;
		allList = new Vector<String>() ;	// 指定操作的泛型為String
		allList.add("Hello") ;	// 此方法由Collection接口而來
		allList.add("Hello") ;	// 此方法由Collection接口而來
		allList.add(0,"World") ;	// 在第一個位置上添加新的內容
		allList.add("MLDN") ;	// 向Collection中加入內容
		allList.add("www.mldn.cn") ;
		for(int i=0;i<allList.size();i++){
			System.out.print(allList.get(i) + "、") ;
		}
	}
};


import java.util.Vector ;
import java.util.List ;
public class VectorDemo02{
	public static void main(String args[]){
		Vector<String> allList = null ;
		allList = new Vector<String>() ;	// 指定操作的泛型為String
		allList.addElement("Hello") ;	// 此方法由Collection接口而來
		allList.addElement("MLDN") ;	// 向Collection中加入內容
		allList.addElement("www.mldn.cn") ;
		for(int i=0;i<allList.size();i++){
			System.out.print(allList.get(i) + "、") ;
		}
	}
};



最後更新:2017-04-03 14:54:20

  上一篇:go Linux技巧--Redhat 5係統中的vim編輯器無法正常顯示中文解決方案(中文顯示為亂碼)/Ubuntu 12.04係統gedit中文亂碼
  下一篇:go weblogic中設置數據源的注意點