1. 程式人生 > >List介面的特有方法

List介面的特有方法

package cn.itcast.list;

import java.util.ArrayList;
import java.util.List;

/*
集合 的體系圖:
 ------| Collection   單列集合的根介面
 -----------| List   如果是實現了List介面的集合類,具備的特點:有序,元素可重複。
 -----------| Set 	如果是實現了Set介面的集合類,具備的特點: 無序,元素不可重複。
 
 集合中的有序是指新增到集合元素中的順序與儲存的順序是一致。
 
 
 */
public class Demo2 {

	public static void main(String[] args) {
		List list  =  new ArrayList();
		list.add("狗娃");
		list.add("狗剩");
		list.add("鐵蛋");
		list.add("鐵蛋");
		System.out.println("集合的元素:"+ list);
		
		
		
		
	}
	
}
package cn.itcast.list;

import java.util.ArrayList;
import java.util.List;

/*
 List介面下面特有的方法:
 	
 	增加
 		add(int index, E element)     指定索引值新增元素
		addAll(int index, Collection c)  指定索引值把一個集合的元素新增到另外一個集合中、

 	
 	刪除
 		remove(int index)   指定索引值刪除元素

 	修改
 	
 		set(int index, E element)      指定索引值修改元素

 	獲取
 		get(int index)   	 根據索引值獲取元素
		indexOf(Object o)    查詢指定元素第一次出現的索引值, 如果不包含指定的元素則返回-1表示.
		lastIndexOf(Object o)   查詢指定元素最後一次出現的索引值, 如果不包含指定的元素則返回-1表示.
		subList(int fromIndex, int toIndex)   指定開始於結束的索引值擷取集合中的元素,返回 

 	
 	迭代
 		listIterator() 
 	
 	List介面特有的方法都是操作索引值的,
 	
 */
public class Demo3 {

	public static void main(String[] args) {
		List list = new ArrayList();
		list.add("王林");
		list.add("馬雲");
		list.add("志軍");
		
		/*
		List list2 = new ArrayList();
		list2.add("如花");
		list2.add("鳳姐");
		list2.add("美美");
		
		
		
		 * 新增
		list.add(1,"化騰");
		list.addAll(2, list2);
		* 
		* 刪除
		
		System.out.println("返回被刪除的元素:"+ list.remove(2));
		
		修改
		
		
		list.set(1, "馬元坤");
		*/
		
		
		System.out.println("集合的元素:"+ list);
		
		
		
	}
	
}
package cn.itcast.list;

import java.util.ArrayList;
import java.util.List;

/*
獲取
	get(int index)   	 根據索引值獲取元素
	indexOf(Object o)    查詢指定元素第一次出現的索引值, 如果不包含指定的元素則返回-1表示.
	lastIndexOf(Object o)   查詢指定元素最後一次出現的索引值, 如果不包含指定的元素則返回-1表示.
	subList(int fromIndex, int toIndex)   指定開始於結束的索引值擷取集合中的元素,返回 


迭代
	listIterator() 

*/
public class Demo4 {
	
	public static void main(String[] args) {
		List list = new ArrayList();
		list.add("王林");
		list.add("馬雲");
		list.add("志軍");
		list.add("馬雲");
		
		
		/*
		System.out.println("元素:"+ list.get(2));
	
		for(int index = 0 ; index< list.size() ; index++){
			System.out.print(list.get(index)+",");
		}
		
		
		
		System.out.println("索引值:"+ list.indexOf("馬雲"));
		System.out.println("最後一次出現 的元素索引值:"+ list.lastIndexOf("馬雲"));
		
		List subList = list.subList(2, 4) ; // 包頭不包尾
 		System.out.println("子集合的元素:"+ subList);
 		*/
	}

}
package cn.itcast.list;

import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;

/*
迭代
listIterator() 

listIterator特有的方法:

	next()  :    先獲取當前遊標指向的元素,然後遊標向下移動一個 單位。
		
	hasPrevious()  問是否有上一個元素
	previous()     遊標先向上移動一個單位,然後獲取當前遊標指向的元素。


	add(E e)   		把元素新增到當前遊標指向的位置上。
	set(E e) 		使用指定的元素替代迭代器最後一次返回的元素。
*/
public class Demo5 {
	
	public static void main(String[] args) {
		List list = new ArrayList();
		list.add("王林");
		list.add("馬雲");
		list.add("志軍");
		list.add("表哥");
		
		
		ListIterator it = list.listIterator();  // 獲取到一個迭代器
		
		/*
		it.next();
		it.next();
		//System.out.println("有上一個元素嗎?"+ it.hasPrevious());
		System.out.println("上一個元素:"+ it.previous());
		*
	
		
		while(it.hasNext()){
			it.next();
		}
		
		
		while(it.hasPrevious()){
			System.out.print(it.previous()+",");
		}
		
		
		
		it.add("寶寶");
		*/
		it.next();
		it.next();
		it.set("狗娃");
		
		System.out.println("集合的元素:"+ list);
		
	}

}