查找元素快,增删元素慢

因为数组有索引,所以查的快,因为数据定长,不能改,增删会创建一个新的数组

链表查找速度慢,要从开头1开始查找,增删速度快

数组和集合的互相转换

数组转集合

Arrays.asList:将数组转成集合,转换后的集合还是不能添加和删除元素,但是其他所有方法都可以使用

基本数据类型组成的数组,转成集合时,会把基本数据类型的数组,当成一个对象

int[] arr = {10, 20, 30};
List list = Arrays.asList(arr);
// List<int[]> list = Arrays.asList(arr);
System.out.println(list); // [[I@15db9642]

引用数据类型组成的数组,转成集合时,才会转成多个对象

Integer[] arr = {10, 20, 30};
List list = Arrays.asList(arr);
// List<Integer> list = Arrays.asList(arr);
System.out.println(list); // [10, 20, 30]

集合转数组

list<String> list = new ArrayList<>();
list.add("b");
list.add("a");
Object objArr = list.toArray();
String strArr1 = list.toArray(new String[0]); // ["b", "a"]
String strArr2 = list.toArray(new String[5]); // ["b", "a", null, null, null]