昨天有个业务需求是用户上传Excel,包含两个sheet,相互比较,核对无误之后将第一个sheet的数据保存到数据库。比较正确后我是采用了Mybatis的批量插入来存入数据库的,为了方便起见,解析excel时候,每一行对应的对象并没有使用自定义对象,而是将每一行暂存为一个Map,后来就出现了将map.values()返回的Collection<HashMap<String, String>>转换为List<HashMap<String, String>>对象,当然循环遍历可以解决,但是那样代码看起来太难看,而且性能消耗高。

首先尝试了强转:

强转报错,换成List<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>(collection);可以正确转换并保存。

后看来下这个构造函数

里边是先将Collection转为Object数组,明白了,毕竟ArrayList底层就是一个数组(有扩容方法),此处转为的该elementData即为底层的这个数组,貌似比循环Collection一个个添加进List要高效。

Collection转List相关推荐

  1. java 集合 接口_Java集合之Collection接口

    1 - Java集合介绍 /* 1. 一方面, 面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象 的操作,就要对对象进行存储. 2. 另一方面,使用Array存储对象方面具有一些弊 端,而 ...

  2. java中collection方法_Java 8中的Collector toCollection()方法

    toCollection()Java中的Collector类的方法返回一个Collector,该Collector以遇到的顺序将输入元素累积到一个新的Collection中. 语法如下static & ...

  3. java map collection_java 集合----Map、Collection

    接口:红色:实现类:黑色字体 一.Collection集合 Collection |_____Set(HashSet) |      |_____SortedSet(TreeSet) |_____Li ...

  4. Java学习总结:53(单对象保存父接口:Collection)

    单对象保存父接口:Collection java.util.Collection是进行单对象保存的最大父接口,即每次利用Collection接口都只能保存一个对象信息.单对象保存父接口定义如下: pu ...

  5. 【java】兴唐第二十节课(Collection 和 ArrayList)

    (一)Collection 1.如果实现 --able 名称的接口则证明该类或其子类有该功能 (1)实现Iterable接口代表具有迭代功能 (2)实现Cloneable接口代表具有克隆功能 (3)实 ...

  6. 为何 Map接口不继承Collection接口

    1.首先Map提供的是键值对映射(即Key和value的映射),而collection提供的是一组数据(并不是键值对映射). 如果map继承了collection接口,那么所有实现了map接口的类到底 ...

  7. 【JavaSE】day03_Date、SimpleDateFormat、Calendar、Collection

    [JavaSE]day03_Date.SimpleDateFormat.Calendar.Collection 1.Date及其经常使用API 1)JAVA 中的时间 Java中的时间使用标准类库的D ...

  8. (Mirage系列之六)在Mirage里使用Collection

    在Mirage中,Collection是包含一个或多个CVD的集合. Collection的主要作用是简化操作.比如我有一百个终端设备需要分配基础层,如果没有Collection,那么管理员需要逐个点 ...

  9. Collection集合List、Set

    Collection集合,用来保存一组数据的数据结构. Collection是一个接口,定义了所有集合都应该包含的特征和行为 Collection派生出了两类集合 List和Set List接口:Li ...

  10. Oracle 11g Release 1 (11.1) PL/SQL_多维 Collection 类型和其异常

    本文内容 多维 Collection Collection 异常 多维 Collection 虽然 collection 只有一维的,但可以模型一个多维的.创建一个 collection,其每个元素也 ...

最新文章

  1. java contions_Java数据结构与算法
  2. 人工智能技术或成为未来网络安全的引爆点和驱动力
  3. jsp页面中JSTL/EL标签引用java后台静态static字段的方法总结
  4. RabbitMQ 镜像集群配置_05
  5. 常系数线性微分方程的直接解法-利用特征方程
  6. java 之 观察者模式(大话设计模式)
  7. IIS的Server Application Error报错解决方法
  8. 现代交换技术--交换概论
  9. Github 汉化插件教程
  10. win10相机打不开,显示错误代码0xA00F4246(0x800706D9)
  11. 如何在Mac终端删除U盘的隐藏文件
  12. 求滑动窗口中的最大值和最小值
  13. TI Sitara AM57x DSP+ARM + Xilinx Artix-7 FPGA核心板 规格书资料
  14. 批处理--删除当前目录及子目录中的空文件夹或文件
  15. 兼容ie浏览器代码处理
  16. Hutool-crypto加密工具
  17. w7怎么备份服务器上的文件夹,教你在Windows7系统中自动备份指定文件夹
  18. 技术前沿与经典文章18:历史上54位伟大物理学家、科学家的专属LOGO(四)
  19. 搜索技术【二分搜索】 - 简介 原理
  20. Java编程工具(11):IDEA 服务器热部署详解E

热门文章

  1. 人人都是数据分析师-数据分析之数据图表可视化(上)
  2. 什么是ARM处理器?ARM处理器有哪些优点?
  3. 信息搜集——主机发现与端口扫描
  4. 这里有你想知道的那些卖家友好型跨境电商平台!
  5. 解决OSError: [Errno 98] Address already in use问题
  6. 最新的Android版本是什么? 以及如何更新到当前的Android操作系统?
  7. stm32霍尔库(hal)的FPU开启
  8. 《在线问卷调查系统》交流基地~
  9. 常见蛋白质种类_关于健身常用的4种蛋白粉
  10. 2.5 利用matlab计算DFT