/**
     * 
     *@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);