Java SEList集合特点&常用方法
CAMELLIA!!! note 目录
List集合特点&常用方法
一、List集合特点
1. 有序性
List
集合中的元素是有序的,按照插入顺序进行排序。这意味着每个元素都有一个固定的位置(索引),可以通过索引访问和操作元素。
2. 允许重复元素
List
集合允许存储重复的元素。这意味着一个 List
中可以有多个相同的对象。
3. 元素索引
List
集合中的每个元素都有一个索引,索引从 0
开始。可以通过索引快速访问、插入、删除和修改元素。
二、List接口下常见的实现类
ArrayList
:数组
Vector
、Stack
:数组(线程安全)
LinkedList
:双向链表
三、List接口特有方法
修饰符和类型 |
方法 |
描述 |
void |
add(int index, E element) |
将指定元素插入此列表的指定位置(可选操作)。 |
E |
set(int index, E element) |
用指定元素替换此列表中指定位置的元素(可选操作)。 |
E |
remove(int index) |
删除此列表中指定位置的元素(可选操作)。 |
int |
indexOf(Object o) |
返回此列表中第一次出现的指定元素的索引,如果此列表不包含该元素,则返回 -1。 |
int |
lastIndexOf(Object o) |
返回此列表中指定元素最后一次出现的索引,如果此列表不包含该元素,则返回 -1。 |
List<E> |
subList(int fromIndex, int toIndex) |
返回此列表在指定的fromIndex (包括)和toIndex (不包括)之间的部分的子集合 |
E |
get(int index) |
返回此列表中指定位置的元素。 |
static <E> List<E> |
of(E... elements) |
返回包含任意数量元素的不可修改列表。 |
测试代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
| package List;
import org.junit.jupiter.api.Test;
import java.util.ArrayList; import java.util.Iterator; import java.util.List;
public class ListTest { private static List<String> list = new ArrayList<>();
static { list.add("camellia"); list.add("xiaohua"); }
public void display(){ Iterator<String> it = list.iterator(); while (it.hasNext()) System.out.println(it.next()); }
@Test public void testListAdd(){ list.add(1,"NICE"); display(); }
@Test public void testListSet(){ list.set(1,"HAHA"); display(); }
@Test public void testListRemove(){ list.remove(1); display(); }
@Test public void testListIndexOf(){ System.out.println(list.indexOf("camellia")); }
@Test public void testListLastIndexOf(){ System.out.println(list.lastIndexOf("xiaohua")); }
@Test public void testListSubList(){ System.out.println(list.subList(0, 2)); }
@Test public void testListGet(){ for (int i=0;i<list.size();i++) System.out.println(list.get(i)); }
@Test public void testListOf(){ List<Integer> nums = List.of(1,2,3,4,5,6,7,8,9); } }
|