目录

前言

一、容器如何处理表数据

二、JAVABean(java豆)+ArrayList

2、1 创建JAVABean

2、2 使用ArrayList进行存储。

三、使用HashMap+ArrayList进行存储。

3、1 HashMap存储个人信息

3、2 使用ArrayList进行存储。

总结


前言

前几篇博客讲解了Collection集合类的底层以及一些基本的使用!今天来聊聊在实际项目中我们是怎么运用的!

一、容器如何处理表数据

身份证ID 姓名 年龄 性别
1 德玛 32
2 小鱼人 22
3 女枪 18

上面是一张模拟的表格,在实际项目中通常需要将数据存储到表格中,或者将数据从表格中拿出。通常有两种方式进行

  1. 使用JAVABean(java豆)+ArrayList方式进行。
  2. 使用HashMap+ArrayList进行存储。

二、JAVABean(java豆)+ArrayList

2、1 创建JAVABean

JAVABean:java豆,实际上一种面对对象的思想,我们将表格中的人员信息,抽象成一个实体类Person。而这个Person类我们就可以称之为JAVABean或者实体类。这种类在企业开发中非常常见,其中类里面一般只存私有属性以及对应的GET,SET方法和构造函数。这些属性实际上就是表格中的每一列!

Person类核心代码:

public class Person {
// 每一个属性代表的就是一个列private Integer IDCard;private String name;private Integer age;private Character sex;// 空构造public Person(){}// 有参构造public Person(int IDCard,String name,int age,char sex){this.IDCard=IDCard;this.name=name;this.age=age; this.sex=sex;}public Integer getIDCard() {return IDCard;}public void setIDCard(Integer IDCard) {this.IDCard = IDCard;}// get,set方法就写了一个 其他省略//....
}

2、2 使用ArrayList进行存储。

public class UseCollection {// javabean+arraylist的使用public static void main(String[]args){// 1、创建person对象.Person person01 = new Person(1,"德玛",32,'男');Person person02 = new Person(2,"小鱼人",22,'雄');Person person03 = new Person(3,"女枪",18,'女');// 2、创建ArrayList,并存入List arrayList = new ArrayList();arrayList.add(person01);arrayList.add(person02);arrayList.add(person03);// 3、此时我们所有的信息都存入到了List中printPersonName(arrayList);}public static void printPersonName(List<Person> list){for(int i = 0 ; i < list.size(); i++){System.out.println("ID:"+list.get(i).getIDCard()+" 姓名:"+list.get(i).getName());}}
}

三、使用HashMap+ArrayList进行存储。

上面我们通过JAVABean+ArrayList的方式进行了数据的存储,实际上我们还可以通过HashMap的方式替代掉实体类,在现代企业开发中有不少的公司仍然使用这种方式。其中原理就是通过HashMap的K,V特性进行的。一个HashMap就是一个对象。话不多说,Let's do it!

3、1 HashMap存储个人信息

        //第二种方式 通过 HashMap进行。Map map1 = new HashMap();//存入德玛的信息 ,Key存的是表中的列 ,Value存的就是表中的值。map1.put("IDCard",1);map1.put("name","德玛");map1.put("age",32);map1.put("sex",'男');//一条信息就存好了。Map map2 = new HashMap();map2.put("IDCard",2);map2.put("name","小鱼人");map2.put("age",22);map2.put("sex",'雄');Map map3 = new HashMap();map3.put("IDCard",3);map3.put("name","女枪");map3.put("age",18);map3.put("sex",'女');

3、2 使用ArrayList进行存储。

// 2、创建ArrayList,并存入
List arrayList2 = new ArrayList();
arrayList2.add(map1);
arrayList2.add(map2);
arrayList2.add(map3);printPersonName(arrayList2,0);

打印结果:


总结

集合在实际开发中可以结合数据库的表来操作,是一种常见的方式!需要好好掌握这两种方式!Collection在整个企业开发中都是有非常重要的作用,使用频率非常高!这一块内容要相当熟悉。

其他Collection相关博客链接:

1、HasHMap的底层实现

2、ArrayList底层实现

3、LinkList的底层实现

我是帅哥威!一个即将拥有9块腹肌的程序猿。不给我点个

容器类存储表格数据(12)相关推荐

  1. Java的知识点18——数组存储表格数据、冒泡排序的基础算法、冒泡排序的优化算法、二分法查找

    数组存储表格数据 package cn.dym08; import java.util.Arrays; public class Test09 {public static void main(Str ...

  2. 从零开始学java(二十六)--多维数组,多维数组存储表格数据

    从零开始学java(二十六)--多维数组 多维数组 多维数组存储表格数据 多维数组 多维数组可以看成以数组为元素的数组.可以有二维.三维.甚至更多维数组,但是实际开发中用的非常少.最多到二维数组(学习 ...

  3. 【Java】利用容器存储表格数据

    思路 代码 import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util. ...

  4. 如何不写代码通过爬虫软件采集表格数据

    采集表格内容,包括列表形式的商品评论信息.正文中的表格等,凡是html代码采用<table>表单形式的表格,都可以不写代码,通过可视化的方式完成采集. 首先,我们使用的工具是前嗅大数据的F ...

  5. STM32(或其他MCU)如何向SD卡、U盘读写Excel表格数据

    1,直接上方法         在程序中将 待保存的数据 以".csv"格式(.csv一种特殊纯文本文本,同操作.txt方式一样) 存储到 SD卡,U盘中!再将 SD卡,U盘插入电 ...

  6. 第6章 数据结构化与数据存储(6.1数据结构化神器——pandas库,读取网页中的表格数据)

    通过pandas库可以方便地爬取网页中的表格数据,对数据进行结构化处理,并导出为Excel工作簿等文件. 6.1.1用read_html()函数快速爬取网页表格数据 使用pandas库中的read_h ...

  7. scrapy中集成selenium+浏览器池实现selenium的并发爬取LCSC网站中非结构化表格数据+异步存储进mysql+完整代码

    爬取https://lcsc.com/products/Connectors_365.html这个网址下所有的表格数据. 蓝色的都是要爬取的子页面,要爬取子页面里面的表格数据 ,表格数据如下: 右上角 ...

  8. 多线程导出excel高并发_用多线程优化Excel表格数据导入校验的接口

    公司的需求,当前某个Excel导入功能,流程是:读取Excel数据,传入后台校验每一条数据,判断是否符合导入要求,返回给前端,导入预览展示.(前端等待响应,难点).用户再点击导入按钮,进行异步导入(前 ...

  9. 《预训练周刊》第9期:TABBIE:表格数据的预训练表示、「视觉预训练神作」:不用图片却训出图像识别SOTA?...

    No.09 智源社区 预训练组 预 训 练 研究 观点 资源 活动 关于周刊 超大规模预训练模型是当前人工智能领域研究的热点,为了帮助研究与工程人员了解这一领域的进展和资讯,智源社区整理了第9期< ...

最新文章

  1. 年薪 50 万!淘宝重金招聘,35 岁以上优先,学历不限
  2. iOS系统原生二维码条形码扫描
  3. BP神经网络的Java实现(转载)
  4. 16.1116 NOIP 考前模拟(信心题)
  5. 我与AI:我的“机器学习”过程
  6. zip伪加密做法及原理
  7. 高通驱动9008安装_高通snapdragon888的性能有多强大
  8. mysql 远程服务器返回错误404_远程服务器返回异常: (404) 未找到
  9. python列表中存类对象_Python DataFrame或用于存储对象的列表
  10. css中设置微软雅黑时,在ie6css中有些样式会失效的解决办法
  11. MYSQL-实现ORACLE- row_number() over(partition by ) 分组排序功能
  12. 02-Mysql数据库----初识
  13. java paint清空_调用paint方法时Java清除屏幕 – 如何避免?
  14. Java_Save could not be completed. Try File> Save As. if the problem persists.
  15. 如何通俗易懂地理解什么叫泛型?
  16. Linux Shell 并行
  17. 安全邮箱是什么,163邮箱安全中心,安全邮箱怎么注册?
  18. C语言——文件操作(2)文件的读写操作
  19. 用 Python 自动生成 Excel 数据报表~
  20. 一页纸项目管理,附图表模板,可免费领取 | 再大的项目,都能用1页纸讲明白

热门文章

  1. android 外接扫码枪_Android手机(设备)连接扫描枪扫码遇到的问题
  2. 看《我的工科女友》感受
  3. 计算机中文名称乱码,中文文件名乱码怎么解决?
  4. 浅谈大型web系统架构
  5. 计算机犯罪保护现场,计算机犯罪现场.ppt
  6. layui select 选中改变字体颜色 正常为绿色,不正常为红色
  7. 图扑数字孪生智慧社区,助力社区数字化转型
  8. 使用js转换数据库时间类型
  9. 二叉树最强总结(python实现)
  10. 值得收藏的 5 款iPhone 数据恢复软件