java list map转换成数组

复制代码
/**
     * 
     *@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);

链接分享: https://www.cnblogs.com/goloving/p/7740100.html

posted @   ppjj  阅读(9916)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示