1.  Java集合框架中的所有实例类都实现了Cloneable和Seriablizable接口。所以,它们的实例都是可复制和可序列化的。

2.  规则集存储的是不重复的元素。若要在集合中存储重复的元素,就需要使用线性表。线性表不仅可以存储重复的元素,而且允许用户指定存储的位置。用户可以通过下标来访问线性表中的元素。

3.  Java集合支持三种类型的规则集:散列集HashSet、链式散列集LinkedHashSet和树形集TreeSet。HashSet以一个不可预知的顺序存储元素;LinkedHashSet以元素被插入的顺序存储元素;TreeSet存储已经排好序的元素。HashSet、LinkedHashSet和TreeSet中的所有方法都继承自Collection接口。

4.  Java集合框架支持两种类型的线性表:数组线性表ArrayList和链表LinkedList。ArrayList是实现List接口的可变大小数组。ArrayList中的所有方法都是在List接口中定义的。LinkedList是实现List接口的一个链表。除了实现了List接口,该类还提供了可从线性表两端提取、插入、删除元素的方法。

5.  Vector类实现了List接口。在Java 2中,Vector类和ArrayList是一样的,所不同的是它所包含的访问和修改向量的方法是同步的。Stack类扩展了Vector类,并且提供了几种对栈进行操作的方法。

6.  Queue接口表示队列。PriorityQueue类为优先队列实现Queue接口。

7.  Collection接口表示存储在规则集或线性表中元素的集合。Map接口将键值映射到元素,键值类似于下标。在List中,下标是整数。而在Map中,键值可以使任意类型的对象。图中不能包含重复的键值。一个键值至多可以对应一个值。Map接口提供了查询、更新、获取值集合和键值集合的方法。

8.  Java集合框架支持三种类型的图:散列图:HashMap、链式散列图:LinkedHashMap和树形图TreeMap。对于定位一个值、插入一个映射和删除一个映射而言,HashMap是很高效的。LinkedHashMap支持图中的条目排序。HashMap类中的条目是没有顺序的,但LinkedHashMap中的条目可以按照某种顺序来获取,该顺序既可以是它们被插入图中的顺序(成为插入顺序),也可以是它们最后一次被访问的顺序,从最早到最晚(称为访问顺序)。对于遍历排好序的键值,TreeMap是高效的。键值可以使用Comparable接口来排序,也可以使用Comparator接口来排序。

转载于:https://www.cnblogs.com/dongling/p/5742385.html

Java学习笔记(2)----散列集/线性表/队列/集合/图(Set,List,Queue,Collection,Map)相关推荐

  1. C# 学习笔记:散列与哈希

    哈希表 我们在C#中,除了数据结构的顺序表链表栈队列之外,还有一个比较重要的就是哈希表,也就是数据结构中的散列表. 散列表:建立一个确定的对应关系H,使得每个关键码key都和它唯一的存贮位置H(key ...

  2. 《数据结构》c语言版学习笔记——单链表结构(线性表的链式存储结构Part1)

    线性表的链式存储结构 数据结构系列文章 第二章 单链表结构 文章目录 线性表的链式存储结构 前言 一.单链表的建立 代码 二.单链表的读取 代码 三.单链表的插入 代码 四.单链表的删除 代码 五.单 ...

  3. 学习笔记-数据结构与算法之线性表

    目录 框架图 线性表 顺序结构 创建线性表 输出验证 获取第i个元素 插入元素到特定位置 删除特定位置元素 整体代码 链式结构 创建链表 输出验证 获取第i个元素 插入元素 删除元素 删除整表 完整代 ...

  4. java集合——数组列表(ArrayList)+散列集(HashSet)

    [0]README 0.1) 本文描述+源代码均 转自 core java volume 1, 旨在理解 java集合--数组列表(ArrayList)+散列集(HashSet) 的相关知识: 0.2 ...

  5. java 散列集_java数据结构之散列集HashSet与散列表Hashtable

    java数据结构之散列集HashSet与散列表Hashtable 1.散列集HashSet HashSet类在java.util包中 A.构造方法:HashSet() B.常用方法 public bo ...

  6. kubernetes(K8S)学习笔记P6:K8s集群|java项目部署

    kubernetes(K8S)学习笔记P6:K8s集群|java项目部署 8.集群资源监控 8.1概述 8.2搭建集群监控平台系统 8.2.1部署prometheus 8.2.3部署Grafana 8 ...

  7. Java学习笔记(十)--控制台输入输出

    输入输出 一.控制台输入 在程序运行中要获取用户的输入数据来控制程序,我们要使用到 java.util 包中的 Scanner 类.当然 Java 中还可以使用其他的输入方式,但这里主要讲解 Scan ...

  8. java学习笔记11--集合总结

    java学习笔记系列: java学习笔记10--泛型总结 java学习笔记9--内部类总结 java学习笔记8--接口总结 java学习笔记7--抽象类与抽象方法 java学习笔记6--类的继承.Ob ...

  9. 《Java学习笔记(第8版)》学习指导

    <Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...

  10. Java学习笔记(原创)

    Java学习笔记(原创) 2011-12-01 16:37:00|  分类: Java|举报|字号 订阅 下载LOFTER客户端 基本知识 一. Java基础 1. java语言的特点: ①简单:没有 ...

最新文章

  1. Java基础系列:(2)关于枚举的简单总结
  2. Unity Shader基本例子
  3. [z]IE6各种不兼容问题
  4. 《云计算开放应用架构》标准发布,阿里云持续领航云原生
  5. IBM将利用Watson进行报税 以彰显人工智能优势
  6. 异步通信在生活中的例子_聊聊工作中经常遇到的“异步”,你掌握了多少
  7. java redis缓存使用_java使用redis缓存数据库
  8. JS中浮点数运算误差处理
  9. POJ 3280 Cheapest Palindrome(DP)
  10. 数据库热备份 Xtrabackup安装及使用
  11. [转载] 使用python 中的numpy创建数组
  12. Django ORM 使用手册
  13. 大数据管理技术 Hadoop-JavaAPI程序案例1
  14. SAP系统管理的常用T-CODE
  15. WinCC RT Professional网络通讯配置步骤
  16. CS224n_2019_Assignment1: Exploring Word Vectors Coding Solution
  17. gitee生成公钥报错
  18. ai怎么让图片任意变形_为什么AI软件将图形等比例缩小会变形?如何样可以要图形不变形?...
  19. 国防科技大学 计算机硬件技术基础,国防科技大学--操作系统教程【40讲】--罗宇...
  20. windows防火墙规则添加

热门文章

  1. Atitit ati licenseService    设计原理
  2. Atitit.软件的建模种类and 建模语言选型and UML???
  3. paip.代码生成器数据源格式最佳实践
  4. paip.广告过滤系统 php 实现
  5. paip.程序不报错自动退出的解决
  6. 周剑:国产商业智能 BI 这 20 年(1997~2017)
  7. 期货交易的异常交易认定标准
  8. 洛可可集团董事长贾伟:未来组织的进化
  9. 《Serverless 架构》序言
  10. 阿里云-高性能计算招聘