什么是集合?

1、集合类存放于java.util包中。

2、集合类型主要有3种:set(集)、list(列表)和map(映射)。

3、集合存放的都是对象的引用,而非对象本身。所以我们称集合中的对象就是集合中对象的引用。

简单来讲:集合就是一个放数据的容器,准确的说是放数据对象引用的容器。

注意:

● 集合只能存放对象。比如你存入一个int型数据66放入集合中,其实它是自动转换成Integer类后存入的,Java中每一种基本数据类型都有对应的引用类型。

● 集合存放的都是对象的引用,而非对象本身。所以我们称集合中的对象就是集合中对象的引用。对象本身还是放在堆内存中。

● 集合可以存放不同类型,不限数量的数据类型。

集合的由来

通常,我们的Java程序需要根据程序运行时才知道创建了多少个对象。但若非程序运行,程序开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不知道它的准确类型。为了满足这些常规的编程需要,我们要求能在任何时候,任何地点创建任意数量的对象,而这些对象用什么来容纳呢?我们首先想到了数组,但是!数组只能存放同一类型的数据,而且其长度是固定的,那怎么办了?集合便应运而生了。

Java 集合框架主要结构图

发现一个特点,上述所有的集合类,除了map系列的集合,即左边的集合都实现了Iterator接口。

Iterator是一个用来遍历集合中元素的接口,主要有hashNext(),next(),remove()三种方法。

它的子接口ListIterator在它的基础上又添加了三种方法,分别是add(),previous(),hasPrevious()。

从图中我们可以看到:

1、集合主要分为Collection和Map两个接口。

2、Collection又分别被List和Set继承。

3、List被AbstractList实现,然后分为3个子类,ArrayList,LinkList和VectorList。

4、Set被AbstractSet实现,又分为2个子类,HashSet和TreeSet。

5、Map被AbstractMap实现,又分为2个子类,HashMap和TreeMap。

6、Map被Hashtable实现。

java集合是wftc_java的集合是什么?相关推荐

  1. java集合是wftc_Java集合

    一.集合的由来 通常,我们的程序需要根据程序运行时才知道创建多少个对象.但若非程序运行,程序开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不知道它的准确类型.为了满足这些常规的编程需要,我们要 ...

  2. Java基础知识回顾之四 ----- 集合List、Map和Set

    前言 在上一篇中回顾了Java的三大特性:封装.继承和多态.本篇则来介绍下集合. 集合介绍 我们在进行Java程序开发的时候,除了最常用的基础数据类型和String对象外,也经常会用到集合相关类. 集 ...

  3. JAVA语言基础-面向对象(集合框架02List、泛型)

    2019独角兽企业重金招聘Python工程师标准>>> 16.01_集合框架(去除ArrayList中重复字符串元素方式)(掌握) A:案例演示 需求:ArrayList去除集合中字 ...

  4. 2019-05-26 Java学习日记之Set集合

    HashSet存储字符串并遍历: package com.set;import java.util.HashSet;public class Demo1 {/*** Set集合,无索引,不可以重复,无 ...

  5. Java基础知识强化之集合框架笔记76:ConcurrentHashMap之 ConcurrentHashMap简介

    1. ConcurrentHashMap简介: ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和Hashtable功能相同但是线程安全的方法.Conc ...

  6. java 泛型集合 json_将泛型集合转换成分页json数据

    [java]代码库package com.sunweb.util.jsonfactory; import java.util.List; import com.sunweb.util.jsonfact ...

  7. java创建集合有的不用泛型_为什么在Java泛型右手边的集合类型没有任何影响?...

    使用Java的Generics功能我创建了一个List对象,在左侧我使用的是原始类型List,在右侧我使用的是泛型类型ArrayList. List myList=new ArrayList(); 我 ...

  8. (Java集合框架)Map集合

    Map集合 概述 现实生活中,常会看到这样的一种集合:IP地址与主机名,身份证号与个人,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射.Java提供了专门的集合类用来存放这种对象关系的对象 ...

  9. java hashset 源码_Java集合源码分析-HashSet和LinkedHashSet

    前两篇文章分别分析了Java的ArrayList和LinkedList实现原理,这篇文章分析下HashSet和LinkedHashSet的源码.重点讲解HashSet,因为LinkedHashSet是 ...

最新文章

  1. 介绍importlib
  2. Win7访问局域网内共享文件夹
  3. 《openssl 编程》之数据压缩
  4. win7下安装Oracle10g解决方案
  5. java utf-8 gbk_Java 字符转码之UTF-8转为GBK/GB2312
  6. Java加密与解密的艺术~AES-GCM-NoPadding实现
  7. android-手势-基础知识总结
  8. iOS UITextField设置起始字符开始位置
  9. 怎么清理服务器数据库日志文件,SQL SERVER 数据库日志清理图文教程
  10. 来了!安利一款助力百度世界2020 “5G云代驾”、直播互动的黑科技
  11. 【毕业设计】空气质量检测仪(环境检测盒子)- stm32 单片机 嵌入式 物联网
  12. 在线直播源码评论弹幕是如何“练”成的?
  13. ORACLE之SQL——排序
  14. e.hash oldCap == 0 详细解读
  15. 计算机cmd如何设置路由,Windows 系统cmd设置添加静态路由方式
  16. Re: 酷似抓虾的ruby on rail网站-猫爪
  17. 小程序手持弹幕的原理及实现(uni-app)
  18. 被黑指数MAX?浅聊汽车钥匙安全
  19. 感谢这一年的尚不如愿,这是下一年必须努力的理由
  20. 【有利可图网】PS教程:用PS合成立体特效的穿插照片效果

热门文章

  1. 【Java】扑克牌の顺子Judge
  2. 文字框架拼接(洛谷P4327题题解,Java语言描述)
  3. 浅谈Taro和Apollo在开发过程中的实践
  4. Kotlin 1.2 新特性
  5. MyEclipse的Debug模式启动缓慢
  6. Android优秀开源项目大全
  7. Delphi clientdataset的详细介绍
  8. 关于 strftime 的使用
  9. 关于static方法
  10. 在Windows 64位操作系统安装Weblogic的注意事项