java集合框架

原创 2018年02月04日 16:43:36

一、Map

映射表(也称为关联数组)的基本思想是它维护的是键-值(对)关联,因此你可以使用键来查找值。标准的java类库中包含了Map的几种基本实现。

HashMap

Map基于散列表的实现(它实现了HashTable)。插入和查询“键值对”的开销是固定的。可以通过构造器设置容量和负载因子。以调整容器的性能。

LinkedHashMap

类似于HashMap,但是迭代遍历它时,取得“键值对”的顺序是其插入次序,或者是最近最少使用(LRU)的次序。只比HashMap慢一点;而在迭代访问时反而更快,因为它是用链表维护内部结构。

TreeMap

基于红黑树的实现。查看“键”或者“键值对”时,它们会被排序(次序由Comparable或Comparator决定)。TreeMap的特点在于,所得到的结果是经过排序的。TreeMap是唯一的带有subMap()方法的Map,它可以返回一个子树。

WeakHashMap

弱键(weak key)映射,允许释放映射所指向的对象;这是为解决某类特殊问题而设计的。如果映射之外没有引用指向某个“键”,则此“键”可以被垃圾回收器回收。

ConcurrentHashMap

一种线程安全的Map,它不涉及同步加锁。

IdentityHashMap

使用==替代equals()对“键”进行比较的散列映射。专为解决特殊问题而设计。
对Map中使用的键的要求与对Set中的元素的要求一样,任何键都必须具有一个equals()方法;如果键被用于散列Map,那么它必须还具有恰当的hashCode()方法;如果键被用于TreeMap,那么它必须实现Comparable。

有关java集合框架中各接口和类的具体实现方法可以参看以下文章,java集合框架,总结的很详细。

二、有关java集合框架的应用

以上只是简单的介绍了一下java容器的接口和实现类,下面我们通过几个具体的笔试题来深入了解一下java集合框架的使用。

1、java集合框架的层次结构

Collection接口: 

       Set接口:

            HashSet具体类

            LinkedHashSet具体类

            TreeSet具体类

       List接口: 
            ArrayList具体类

            LinkedList具体类

            向量类Vector具体类

            Stack具体类

Map接口:
       HashMap类

       LinkedHashMap类

       TreeMap类 
三、正则表达式应用实例

校验是否全由数字组成

/^[0-9]{1,20}$/
校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串

/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/

^[a-zA-Z]{1} 表示第一个字符要求是字母。

([a-zA-Z0-9]|[.]){4,19}表示从第二位开始(因为它紧跟在上个表达式后面)的一个长度为4到9位的字符串,它要求是由大小写字母、数字或者特殊字符集[.]组成。  

版权声明:本文为博主原创文章,未经博主允许不得转载。

JAVA常用集合框架源码解析(基于1.8)开题篇

倪升武的博客中有一个小专题,读完之后,发现博主的分析基本是基于JAVA1.7的,这里我基于JAVA1.8给出一些新的解读。因为在彻底浅读完JAVA1.8集合部分之前,我无法了解JAVA1.7与1.8之...
  • qq_16811963
  • qq_16811963
  • 2016年06月18日 11:04
  • 917

牛逼笔记:5分钟搞定java集合框架

java集合视频版点击查看   java集合就是一个容器。 1.     集合概述 l       为了保存不确定的数据,或者对象,以及保存具有映射关系的数据。 l       所有的集...
  • bondsui
  • bondsui
  • 2013年01月19日 14:49
  • 2145

java集合框架以及性能分析

1.Java 集合框架图 -集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。 -抽象类:5个抽象类(长虚线表示),对集合接口的部分实现。可扩展为自定义集合类。 -实...
  • sanjiaozhen
  • sanjiaozhen
  • 2015年09月30日 00:27
  • 617

【集合】Java集合框架介绍

文章来源:http://blog.csdn.net/ylyg050518/article/details/48683303 集合框架介绍   Java集合工具包位于Java.util包下,...
  • Spixii
  • Spixii
  • 2016年09月02日 08:27
  • 2613

Java集合框架的继承关系图

Java集合框架图 1. Collection 2. Map
  • Nancy_2
  • Nancy_2
  • 2017年08月13日 10:56
  • 320

java集合框架详解

这篇文章是复制的春哥的,觉得学的狠好! 转载请声明出处:http://blog.csdn.net/zhongkelee/article/details/46801449 综述    ...
  • chenlxhf
  • chenlxhf
  • 2016年05月06日 21:11
  • 1836

java集合框架小练习

List接口和ArrayList类练习 定义一个List对象,如下 List list = new ArrayList(); 在list中添加元素,nih...
  • always14
  • always14
  • 2015年09月28日 23:12
  • 769

【JAVA】集合框架

Java:集合框架
  • mjianglei
  • mjianglei
  • 2016年08月11日 19:27
  • 893

Java集合框架问题总结

1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1...
  • wy5612087
  • wy5612087
  • 2015年08月27日 14:27
  • 1155

Java集合框架:HashMap

Java集合框架概述  Java集合框架无论是在工作、学习、面试中都会经常涉及到,相信各位也并不陌生,其强大也不用多说,博主最近翻阅java集合框架的源码以及搜索一些相关资料整理出Java集合框架的系...
  • u013256816
  • u013256816
  • 2016年03月17日 12:55
  • 6462
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java集合框架
举报原因:
原因补充:

(最多只允许输入30个字)