程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> JAVA常用集合框架用法詳解基礎篇二之Colletion子接口List

JAVA常用集合框架用法詳解基礎篇二之Colletion子接口List

編輯:JAVA綜合教程

JAVA常用集合框架用法詳解基礎篇二之Colletion子接口List


接著上一篇,接著講講集合的知識。上一篇講了Collection接口。它可以說是集合的祖先了,我們這一篇就說說它的子孫們。

一、Collection的子接口

List:有序(存入和取出的順序一致),元素都有索引(即角標),元素可以重復。

Set:元素不能重復,無序的。

首先講講List。

A、List特有的常見方法(都有一個共性的特點就是可以操作角標)。List接口是可以完成對元素的增刪改查,List接口的實現是通過子類來完成:

現在我們初始化一個List接口:List ll=new ArrayList();

接下來說說List的主要常用的方法。

1、添加(通過索引的位置來添加元素)

 

void add(index,element);
void add(index,Collection)
 //List特有的取出方式之一
for(inti=0;i

 

2、刪除(刪除相應索引位置的元素)

 

Object      remove(index);//返回被刪除的元素

 

3、修改(修改指定索引位置的元素,並返回修改前的元素)

 

ObjectSet(index,element)//返回被修改的元素

 

4、獲取:

 

Object get (index);
int  IndexOf(object);//返回此列表中第一次出現指定元素的索引,如果此列表不包含該素,則返回-1.
int lastIndexOf(object);//返回此列表中最後一次出現指定的元素,如果此列表不包含該元素,則返回-1.
List subList(int from,int to);//包含頭,不包含尾,獲取子列表。

 

測試程序代碼如下:

代碼如下:
package com.wq.list;
/**
 * 添加一個課程類,提供課程的選擇
 * @author LULEI
 *
 */
public class Courses {
	private String id;//課程序號
	private String name;//課名
	
	public Courses(){
		
	}
	public Courses(String id,String name){
		this.setId(id);
		this.setName(name);
	}
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
	
}

//測試List的一些方法:

package com.wq.list;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;

public class ListTest {
	//用於存放備選課程的List
	public List courseToSelect;
	public ListTest(){
		this.courseToSelect=new ArrayList();
	}
	
	//用於courseToSelect添加備選課程
	public void testAdd(){
		//創建一個課程的實例,並通過使用add方法,將該實例
		//添加到備選課程List中
		Courses cr1=new Courses("1", "數據庫");
		courseToSelect.add(cr1);//將課程添加到備選課程List中
		Courses temp=(Courses)courseToSelect.get(0);//選取List列表中的第一個元素
		System.out.println("添加了課程:"+temp.getId()+"."+temp.getName());
		
		Courses cr2=new Courses("2","JAVA");
		courseToSelect.add(0, cr2);
		Courses temp2=(Courses)courseToSelect.get(0);
		System.out.println("添加了課程:"+temp2.getId()+"."+temp2.getName());
		
		/*
		 * 下面代碼會出現越界的異常
		Courses cr3= new Courses("4", "test");
		courseToSelect.add(4,cr3);
		//Courses cr3=(Courses)courseToSelect.get(4);
		//System.out.println("添加了課程:"+cr3.getId()+"."+cr3.getName());
		 * 
		 */
		
		Courses cr7=new Courses("1", "數據庫");
		courseToSelect.add(cr7);//將課程添加到備選課程List中
		Courses temp7=(Courses)courseToSelect.get(2);//選取List列表中的第一個元素
		System.out.println("添加了課程:"+temp7.getId()+"."+temp7.getName());
		//addAll()方法的使用
		Courses[] cr3={new Courses("3","高數"),new Courses("4","英語")};
		courseToSelect.addAll(Arrays.asList(cr3));//將數組轉換成List集合
		Courses temp3=(Courses)courseToSelect.get(3);
		Courses temp4=(Courses)courseToSelect.get(4);
		
		System.out.println("添加了兩門課:"+temp3.getId()+"."+temp3.getName()
				+temp4.getId()+"."+temp4.getName());
		
		Courses[] cr4={new Courses("5","高等語文"),new Courses("6","數據處理")};
		courseToSelect.addAll(2,Arrays.asList(cr4)); //將數組轉換成List集合

		Courses temp5=(Courses)courseToSelect.get(2);
		Courses temp6=(Courses)courseToSelect.get(3);
		
		System.out.println("添加了兩門課:"+temp5.getId()+"."+temp5.getName()
				+temp6.getId()+"."+temp6.getName());
		
	}
	
	/**
	 * 創建一個Get方法,用於獲取List中的元素的方法
	 */
	public void testGet(){
		int num=courseToSelect.size();//獲取List的長度
		System.out.println("可以選擇的課程如下:");
		for(int i=0;i
							
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved