Viewd times
Java中将list转换为array
Jan 16, 2019
1. List.toArray()
java8中的hotspot会自己计算数组大小,不必指定数组的大小。
例如:String[] array = list.toArray(new String[0]);
而不必写为:String[] array = list.toArray(new String[list.size()]);
1 | List<String> list = Arrays.asList("aaa", "bbb", "ccc"); |
2. List.stream()
java8 可以采用如下写法
1
2 List<String> list = Arrays.asList("aaa", "bbb", "ccc");
String[] array = list.stream().toArray(String[]::new);
3. google guava 库
建议使用java api 而不是下面此种方法
##3.1 使用FluentIterable类1
2List<String> list = Arrays.asList("aaa", "bbb", "ccc");
String[] array = FluentIterable.from(list).toArray(String.class);
##3.2 使用Iterables类1
2List<String> list = Arrays.asList("aaa", "bbb", "ccc");
String[] array = Iterables.toArray(list, String.class);