/**
*
*@Title: ListToArray
*@Description: list列表转换成二维数组
*@Author: Administrator
*@Since: 2018年1月7日下午2:01:25
*@param: @param list
*@param: @param KeyLenght每行的列数,按最长的计算
*@param: @return
*@return Object[][]
*/
private Object[][] ListToArray(List<Map<String, Object>> list, int KeyLenght) {
if (CollectionUtils.isEmpty(list)) {
return new Object[0][];
}
int size = list.size();
Object[][] array = new Object[size][KeyLenght];
for (int i = 0; i < size; i++) {//循环遍历所有行
array[i] = list.get(i).values().toArray();//每行的列数
}
return array;
}
List to Array
List 提供了toArray的接口,所以可以直接调用转为object型数组
List<String> list = new ArrayList<String>();
Object[] array=list.toArray();
上述方法存在强制转换时会抛异常,下面此种方式更推荐:可以指定类型
String[] array=list.toArray(new String[list.size()]);
Array to List
解决方案:
1、运用ArrayList的构造方法是目前来说最完美的作法,代码简洁,效率高:List<String> list = new ArrayList<String>(Arrays.asList(array));
2、运用Collections的addAll方法也也是不错的解决办法
List<String> list = new ArrayList<String>(array.length);
Collections.addAll(list, array);