java util , Arrays: 操作各类数据类型的数组、 进行各种操作、 也可以把数组转变成LIST集合
Arrays.asList(T.... a)
数组变集合
好处:?
/*
1、可以使用集合的思想和方法来操作数组中的元素,如(contains等)。
2、list.add("qq"),UnSupportedOperationException,
注意:将数组变集合以后,不可以使用集合的 《 增 、 删 》方法 ,因为数组的长度固定
但、 get 、 indexOf 、 subList 、 contains
*/
集合变数组
import java.util.*; public class Practice_1 { public static <K, V> void main(String[] args) { ArrayList<String> al = new ArrayList<String>(); al.add("abcd"); al.add("ppp"); al.add("qq"); String[] arr = al.toArray(new String[9]); // 少了自动补, 多了的为null。
sop(arr); sop(Arrays.toString(arr)); } public static void sop(Object obj) { System.out.println(obj); } }
结果:
[Ljava.lang.String;@15db9742
[abcd, ppp, qq, null, null, null, null, null, null]
/*
1、指定类型的数组到底要定义多长呢?
当指定类型的数组长度小于集合的size,那么该方法内容会创建一个新的数组。长度为集合的size。
当指定类型的数组长度大于集合的size,就不会新创建数组。而是使用传递进来的数组。
所以创建一个刚刚好的数组为优。
2、为什么要将集合变成数组呢?
为了限定对元素的操作,不需要进行增删了。
*/
一个是 asList() Arrays里面的方法 一个是toArray Collection接口中的方法。