Java集合框架——List接口

List 接口

一、特征

  • 有序的:存入顺序和遍历顺序是一致的
  • 允许重复
  • 有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。

Java集合框架——List接口_第1张图片

package com.list.demo;

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

public class ListTest {
	@SuppressWarnings("all")
	public static void main(String[] args) {
		List list = new ArrayList();
		
		list.add("aaa1");
		list.add("aaa2");
		list.add("aaa3");
		list.add("aaa3");
		list.add("aaa4");

		Iterator iterator = list.iterator();
		while(iterator.hasNext()) {
			System.out.println((String)iterator.next());
		}
	}
}
***执行结果:***
aaa1
aaa2
aaa3
aaa3
aaa4

二、List集合的独有方法

  • void add(int index, Object element):在指定位置添加元素
  • Object get(int index):获取指定位置的元素
  • Object remove(int index):根据索引删除元素并返回被删除的元素
  • Object set(int index, Object element):根据索引修改元素并返回被修改的元素

三、添加功能

  • void add(int index, Object element):在指定位置添加元素
	list.add(3, "helloworld");
	/* aaa1
	 * aaa2
	 * aaa3
	 * aaa3
	 * helloworld
	 * aaa4
	 **/
	//在第十个位置添加(不可以)
	list.add(10, "bbb");
	//Exception in thread "main" java.lang.IndexOutOfBoundsException
	//在第五个位置添加(可以)
	list.add(5, "ccc");
	/* aaa1
	 * aaa2
	 * aaa3
	 * aaa3
	 * aaa4
	 * ccc
	 **/

四、获取功能

  • Object get(int index):获取指定位置的元素
	Object object = list.get(3);
	System.out.println((String)object);  // aaa3

五、删除功能

  • Object remove(int index):根据索引删除元素并返回被删除的元素
//Collection的删除方法只删除找到的第一个元素,返回值是是否删除成功(boolean类型)
	boolean rst = list.remove("aaa3");
	System.out.println(rst);  // true
	/* aaa1
	 * aaa2
	 * aaa3
	 * aaa4
	 **/
	//List的删除方法返回值是被删除的元素
	Object obj = list.remove(3);
	System.out.println((String)obj);  // aaa3
	/* aaa1
	 * aaa2
	 * aaa3
	 * aaa4
	 **/

六、修改功能

  • Object set(int index, Object element):根据索引修改元素并返回被修改的元素
	Object obj = list.set(2, "helloworld");
	System.out.println((String)obj);  // aaa3
	/* aaa1
	 * aaa2
	 * helloworld
	 * aaa3
	 * aaa4
	 **/

七、List集合的其他方法

  • int indexOf(Object o):返回此列表中第一次出现的指定元素的索引,如果此列表中不包含该元素,则返回 -1
  • int lastIndexOf(Object o):返回此列表中最后出现的指定元素的索引,如果此列表不包含该元素,则返回 -1
  • List subList(int fromIndex, int toIndex):返回列表中指定的fromIndex和toIndex之间(左闭右开区间)的部分视图
package com.list.demo;

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

public class ListTest2 {
	@SuppressWarnings("all")
	public static void main(String[] args) {
		List list = new ArrayList();
		
		list.add("aaa1");
		list.add("aaa2");
		list.add("aaa3");
		list.add("aaa3");
		list.add("aaa4");
		
		//int indexOf(Object o)
		int index = list.indexOf("aaa3");
		System.out.println(index);  // 2
		
		//int lastIndexOf(Object o)
		int lastindex = list.lastIndexOf("aaa3");
		System.out.println(lastindex);  // 3
		
		//List\ subList(int fromIndex, int toIndex)
		List sublist = list.subList(1, 4);
		System.out.println(sublist);  // [aaa2, aaa3, aaa3]
	}
}

你可能感兴趣的:(#,Java集合框架)