背景:集合 list ,set 都是继承 Collection<E>,提供了一个toArray的方法,这是没错的,可是不是太难满足开发过程中的需求,因为toArray()方法 返回的是一个Object[] ,比如我们需要String[],就有点麻烦
解决:查看方法 T 是一个泛型,返回T []
注意:返回的是一个包装类 eg:Integer,而不是int
查看toArray(T[] a) 的实现源码可知,a的length 为 0 必定小于 集合(list,set)的长度,所以返回list所有的值到a
1、list<String> 转 String[]
List<String> l = Arrays.asList("a", "b", "c", "d","e","f","g","d");
String[] str = resultList.toArray(new String[0]);
2、set<Long> 转 Long[]
Set<Long> set = new HashSet<>();
set.add(1l);
set.add(2l);
set.add(3l);
set.add(4l);
Long[] strings1 = set.toArray(new Long[0]);