Java集合——List集合

首先,Collection接口是所有集合的父类,定义了接口的节本方法;

List是Collection接口的子接口,也是最常用的接口,此接口对Collection接口进行了大量的扩展,List集合里的元素是可以重复的。

List接口的主要实现类有ArrayList,和LinkedList

在数据量不大的情况下,这两个类性能差别不大,

一般情况下,集合里的元素很少变化的,一般用ArrayList,

假如集合里元素经常变动,要用LinkedList;底层实现有差别的。

1.看ArrayList实例;

package Month01.Day11.Demo02;

import java.util.ArrayList;

public class ArrayList_1 {

	private static void printList(ArrayList<String> arrayList) {
		System.out.println("当前集合的元素:");
		// size()方法是获取集合的长度大小
		for (int i = 0; i < arrayList.size(); i++) {
			System.out.print(arrayList.get(i) + " ");
		}
	}

	public static void main(String[] args) {
		ArrayList<String> arrayList = new ArrayList<String>();
		// add()方法 将指定的元素添加到此列表的尾部。
		arrayList.add("小明");
		arrayList.add("小李");
		printList(arrayList);
		System.out.println();
		// 将指定的元素插入此列表中的指定位置,注意索引从0开始
		arrayList.add(1, "小小明");
		printList(arrayList);
		System.out.println();
		// 元素的替换
		arrayList.set(2, "大理");
		printList(arrayList);
		System.out.println();
		// 移除元素
		arrayList.remove(2);
		printList(arrayList);
	}
}

输出结果:

当前集合的元素:
小明 小李 
当前集合的元素:
小明 小小明 小李 
当前集合的元素:
小明 小小明 大理 
当前集合的元素:
小明 小小明 

 2.看LinkedList实例;

package Month01.Day11.Demo02;

import java.util.LinkedList;

public class LinkedList_Test {

	private static void printLinkedList(LinkedList<String> linkedList) {
		System.out.println("当前集合元素为:");
		for (int i = 0; i < linkedList.size(); i++) {
			System.out.print(linkedList.get(i) + " ");
		}
	}

	public static void main(String[] args) {
		LinkedList<String> linkedList = new LinkedList<String>();
		linkedList.add("小1");
		linkedList.add("小2");
		linkedList.add("小3");
		linkedList.add("小4");
		linkedList.add("小5");
		printLinkedList(linkedList);
		System.out.println();

		// indexOf() 返回此列表中首次出现的指定元素的索引,或如果此列表不包含元素,则返回 -1。
		System.out.println(linkedList.indexOf("小1"));

		// peekFirst() 获取但不移除此列表的第一个元素;如果此列表为空,则返回 null。
		System.out.println(linkedList.peekFirst());
		printLinkedList(linkedList);
		System.out.println();

		// peekLast() 获取但不移除此列表的最后一个元素;如果此列表为空,则返回 null。
		System.out.println(linkedList.peekLast());
		printLinkedList(linkedList);
		System.out.println();

		// pollFirst() 获取并移除此列表的第一个元素;如果此列表为空,则返回 null。
		System.out.println(linkedList.pollFirst());
		printLinkedList(linkedList);
		System.out.println();

		// pollLast() 获取并移除此列表的最后一个元素;如果此列表为空,则返回 null。
		System.out.println(linkedList.pollLast());
		printLinkedList(linkedList);
		System.out.println();
	}
}

输出结果为:

当前集合元素为:
小1 小2 小3 小4 小5 
0
小1
当前集合元素为:
小1 小2 小3 小4 小5 
小5
当前集合元素为:
小1 小2 小3 小4 小5 
小1
当前集合元素为:
小2 小3 小4 小5 
小5
当前集合元素为:
小2 小3 小4 

猜你喜欢

转载自blog.csdn.net/qq_37084904/article/details/86347977