> 集合是什么?为什么要用集合?

  • 保存数据会经常使用到数组,但数组存在以下几个缺陷:

    1. 长度开始时必须指定,且一旦指定,不能更改;
    2. 保存的必须为同一类型的元素;
    3. 使用数组进行增加元素的步骤比较麻烦;
//例如 创建一个 Play 数组
Play[] p = new Play[1]; //大小是1
p[0] = new Play();
//增加新的Play对象
Play[] p2 = new Play[p.length+1];//新建数组
//然后再用循环拷贝p数组的元素到p2中,很繁琐

这个时候就需要用一个比数组要“高级的容器”来解决,这就是集合

  1. 可以动态保存任意多个不同类型对象,使用方便;
  2. 提供了一系列方便的操作对象的方法:add、remove、set、get等;
  3. 使用集合添加、删除新元素要简单的多;
  4. 集合不能存放基本数据类型,只能存放对象的引用,对于基本数据类型的存放,都是存的包装类,即 Integer、Byte等;

> 集合的框架体系

Java的集合类有很多,主要分为两大类:

单列集合:
双列集合:

//单列集合
ArrayList arrayList = new ArrayList();
arrayList.add("Jack");
arrayList.add("Tom");//双列集合
HashMap hashMap = new HashMap();
hashMap.put("No.1","我");
hashMap.put("No.2","你");

【Java集合】集合是什么?为什么要用集合?相关推荐

  1. Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)...

     本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 写在前面:由于前天项目老师建设局的项目快到验收阶段,所以,前天晚上通宵,昨天睡了大半天, ...

  2. java并发集合有哪些_java中常见并发集合有哪些?详细解析

    关于java中有关集合的知识点,相信大家还是有所了解的.集合中所包含的知识点是非常丰富的,而且可以细分为很多类型.今天就来为大家介绍一下并发集合的有关知识,并且用实际代码为大家展示,一起来看看吧. 首 ...

  3. Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)

    写在前面:由于前天项目老师建设局的项目快到验收阶段,所以,前天晚上通宵,昨天睡了大半天,下午我们宿舍聚会,所以时间有点耽误,希望大家见谅 上接: Java程序员从笨鸟到菜鸟之(四)java开发常用类( ...

  4. Java程序员从笨鸟到菜鸟之(四)java开发常用类(包装,数字处理集合等)(上)

    本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.NET/csh624366188 一:首谈Java中的包装类 Java为基本类型提供包装类,这使得任何接受对象的操作也可以用 ...

  5. java并发编程(二十一)----(JUC集合)CopyOnWriteArraySet和ConcurrentSkipListSet介绍

    转载自  java并发编程(二十一)----(JUC集合)CopyOnWriteArraySet和ConcurrentSkipListSet介绍 这一节我们来接着介绍JUC集合:CopyOnWrite ...

  6. Java中快速处理集合_简洁又快速地处理集合——Java8 Stream(上)

    作者:Howie_Y,系原创投稿 主页:www.jianshu.com/u/79638e5f0743 Java 8 发布至今也已经好几年过去,如今 Java 也已经向 11 迈去,但是 Java 8 ...

  7. Java对数组的操作(二)——集合与数组的切换

    在Java开发中经常遇见集合与数组的互相切换,怎样实现呢,呵呵呵,非常easy: import java.util.ArrayList; import java.util.Arrays;       ...

  8. java的核心类库_Java核心类库,集合框架

    Java集合框架的由来: Java最初版本只为最常用的数据结构提供了很少的一组类:比如Vector.Stack.Hashtable.BitSet.Enumerrationr接品,其中Enumerrat ...

  9. Java Se相关测试题(偏线程、集合)含答案及详解

    Java Se相关测试题(偏线程.集合)(简答.编程)含答案及详解 一.选择.简答题 二.编程题 (编程答案有很多思路,实现方式不同,如果有不同见解可打在评论区或私信) 一.选择.简答题 1.publ ...

  10. 牛客网Java刷题知识点之Java 集合框架的构成、集合框架中的迭代器Iterator、集合框架中的集合接口Collection(List和Set)、集合框架中的Map集合...

    不多说,直接上干货! 集合框架中包含了大量集合接口.这些接口的实现类和操作它们的算法. 集合容器因为内部的数据结构不同,有多种具体容器. 不断的向上抽取,就形成了集合框架. Map是一次添加一对元素. ...

最新文章

  1. 适用于SQL Server生产环境DBA的七大技巧
  2. Java程序猿笔记——基于redis分布式锁实现“秒杀”
  3. ATP检查的一些TIPS
  4. IT是产品、IT是服务、IT是能力
  5. java普通类方法的区别是什么_java – 普通接口类和只有抽象方法的抽象类之间有什么区别吗?...
  6. hello程序的运行过程-从计算机系统角度
  7. 公主病 - 百度百科
  8. python嵌套html开发gui_python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例...
  9. 再不了解PostgreSQL,你就晚了之PostgreSQL主从流复制部署...
  10. 《R语言数据挖掘:实用项目解析》——2.6 变量分段
  11. 二维数组和稀疏数组转化
  12. PHP培训领航者兄弟连IT教育推出兄弟会教育模式
  13. 如何写好科研论文2021秋期末考答案|研究生网课期末考答案|学堂在线|清华大学高飞飞
  14. 网页QQ客服 msn客服
  15. 手把手教你做个人 app
  16. 林子雨版《大数据技术原理与应用》实验五 信息挖掘详解
  17. 2019深圳杯获奖论文_深圳杯数学建模A题获奖论文
  18. 我的世界服务器修改空岛范围,我的世界空岛指令权限大全 | 手游网游页游攻略大全...
  19. 视频剪辑,就上这5个网站找素材,免费可商用。
  20. 汽车流通行业4S门店生存性指标:零服吸收率

热门文章

  1. php网站mercury安装,mercury无线路由器怎么安装 mercury无线路由器安装方法
  2. Android gradle阿里云仓库
  3. Macbook M1开启允许任意来源应用
  4. Kali Linux忘记密码怎么办?
  5. 1.IEC 62056-21 E模式通信
  6. Linux下文件重命名、创建、删除、修改及保存文件
  7. 【XR】VR手柄定位技术
  8. 阿里云服务器购买指南(适合新手小白的图文指导教程)
  9. redis设计与实现-数据库篇
  10. Linux命令:Nginx的启动、停止与重启