List接口介绍和标题演练
List接口介绍、界说及特色
在Java中, List 接口是 java.util 包中的一部分,它承继自 Collection 接口。
一、界说和特色界说和特色
1. 有序调集
- List 中的元素是有序的,这意味着能够经过索引(方位)来拜访元素,索引从0开端。例如,在一个 List 中增加元素的次序是 a 、 b 、 c ,那么它们的索引别离是0( a )、1( b )、2( c )。
2. 答应重复元素
- 与 Set 接口不同, List 答应存储重复的元素。例如,能够在 List 中增加多个相同的字符串。
3. 动态巨细
- List 的巨细是动态的,能够根据需求增加或削减元素。
二、常用完成类
1. ArrayList
- 根据数组完成: ArrayList 内部运用数组来存储元素。当增加元素超越数组容量时,它会主动创立一个更大的新数组,并将旧数组的元素复制到新数组中。
- 随机拜访快:因为根据数组, ArrayList 在随机拜访(经过索引拜访)元素时非常快,时刻复杂度为O(1)。
- 刺进和删去慢:可是在中心刺进或删去元素时,需求移动后边的元素,时刻复杂度为O(n),其间n是列表中的元素数量。
2. LinkedList
- 根据链表完成: LinkedList 内部运用双向链表来存储元素。每个节点包括元素自身以及指向前一个和后一个节点的引证。
- 刺进和删去快:在 LinkedList 中刺进或删去元素只需求修正节点的引证,时刻复杂度为O(1)(如果是在列表两头操作)。
- 随机拜访慢:可是随机拜访元素时,需求从链表头或尾开端遍历,时刻复杂度为O(n)。
3. Vector
- 类似于 ArrayList ,但 Vector 是线程安全的。不过,因为同步机制, Vector 的功能一般比 ArrayList 低,在单线程环境下不引荐运用。
标题
RandomTest.java
点击检查代码
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class Main {
public static void main(String[] args) {
int [] number= new int[10];
Random random = new Random();
for(int i =0 ; i <number.length;i++){
number[i] = random.nextInt(100)+1;
}
List<Integer> list = new ArrayList<>();
for(int j=0 ;j<number.length;j++){
list.add(number[j]);
}
System.out.println(list);
}
}
运转成果
代码解析:
首要导入java.util.List类,java.util.ArrayList类和java.util.Random类,别离用于处理列表和生成随机数,创立一个长度为10的整数数组number用于存储随机数,运用for循环,i小于数组的长度,将随机数存入数组number.创立一个ArrayList来存储整数,运用循环将number数组中的元素逐一加到list中,运用System.out.println办法将list内容打印。