javase(8)_集合框架_List、Set、Map】的更多相关文章

一.集合体系(不包括Queue体系) 二.ArrayList ArrayList的属性 private transient Object[] elementData; //存储元素 private int size; //数组的长度 ArrayList三个构造方法 public ArrayList(int initialCapacity) { if (initialCapacity > 0) { this.elementData = new Object[initialCapacity]; }…
一.Queue Queye接口体系图 体系分析: Deque实现类:ArrayDeque, LinkedList(数组和链表实现双向队列) BlockingDeque实现类:LinkedBlockingDeque(链表实现阻塞双向队列) BlockingQueue实现类:ArrayBlockingQueue,LinkedBlockingQueue,PriorityBlockingQueue,SynchronousQueue,DelayQueue Queue源码 public interface…
前言:俗话说“金三银四铜五”,不知道我要在这段时间找工作会不会很艰难.不管了,工作三年之后就当给自己放个暑假. 面试当中Collection(集合)是基础重点.我在网上看了几篇讲Collection的文章,大多都是以罗列记忆点的形式书写的,没有谈论实现细节和逻辑原理.作为个人笔记无可厚非,但是并不利于他人学习.希望能通过这种比较“费劲”的讲解,帮助我自己.也帮助读者们更好地学习Java.掌握Java. 无论你跟我一样需要应聘,还是说在校学生学习Java基础,都对入门和进一步启发学习有所帮助.(关…
前言:暑期应该开始了,因为小区对面的小学这两天早上都没有像以往那样一到七八点钟就人声喧闹.车水马龙. 前两篇文章介绍了Collection框架的主要接口和常用类,例如List.Set.Queue,和ArrayList.HashSet.LinkedList等等.根据核心框架图,相信我们都已经对Collection这个JavaSE中最常用API之一有一个较为全面的认识. 这个学习过程,还可以推及到其他常用开源框架和公司项目的学习和熟悉上面.借助开发工具或说明文档,先是对项目整体有一个宏观的认识,再根…
1.概述: @white Java集合就像一种容器,可以把多个对象(实际上是对象的引用,但习惯上都称对象)"丢进"该容器中. 2.Java集合大致可以分4类: @white Set:代表无序.不可重复的集合: List:代表有序.重复的集合: Map:代表具有映射关系的集合 Queue:代表一种队列集合实现:(Java 5增加) 3.Java集合和数组的区别 @white 1.长度: 数组:只能保存定长的数据,长度在初始化时指定: 集合:可保存数量不确定的数据. 2.保存数据类型: 数…
不多说,直接上干货! 集合框架中包含了大量集合接口.这些接口的实现类和操作它们的算法. 集合容器因为内部的数据结构不同,有多种具体容器. 不断的向上抽取,就形成了集合框架. Map是一次添加一对元素.Collection是一次添加一个元素. iterator是迭代获取元素 第一大类:Iterator 迭代器是一个对象,它是遍历并选择序列中的对象. 说比了,就是给后面的Collection接口里的实现类使用搭配的,为了取值罢了.    Iterator 只能正向遍历集合,适用于获取移除元素. Li…
  15.01 对象数组的概述和使用 public class Student { // 成员变量 private String name; private int age; // 构造方法 public Student() { super(); } public Student(String name, int age) { super(); this.name = name; this.age = age; } // 成员方法 // getXxx()/setXxx() public Stri…
  18.01 Map集合概述和特点 Map接口概述:将键映射到值的对象,一个映射不能包含重复的键,每个键最多只能映射到一个值 Map接口和Collection接口的不同 1.Map是双列的,Collection是单列的 2.Map的键唯一,Collection的子体系Set是唯一的 3.Map集合的数据结构值针对键有效,跟值无关,Collection集合的数据结构是针对元素有效 18.02 Map集合的功能概述 成员方法: 1.V put(K key,V value): 将指定的值与此映射中的…
Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I]   +--java.util.ArrayList [C]   +--java.util.LinkedList [C]   +--java.util.Vector [C]      +--java.util.Stack [C]+--java.util.Set [I]   +--java.util.HashSet [C]   +--java.util.SortedSe…
原文网址:http://android.blog.51cto.com/268543/400557 Java Collections Framework是Java提供的对集合进行定义,操作,和管理的包含一组接口,类的体系结构.   Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I]   +--java.util.ArrayList [C]   +--java.util.LinkedList [C]   +--java…
Java的集合框架之Map的用法详解 Map有两种比较常用的实现:HashMap 和 TreeMap. HashMap: HashMap 也是无序的,也是按照哈希编码来排序的,允许使用null 值和null 键 TreeMap: TreeMap 是有顺序的,按照用户的输入顺序进行排序,TreeMap 按照顺序村塾"键/值"对.值得注意的是 在TreeMap 中是不允许"键"重复的,但是可以允许"值"重复.下面通过一个简单的例子进行说明. impo…
本篇文章主要对java集合的框架进行介绍,使大家对java集合的整体框架有个了解.具体介绍了Collection接口,Map接口以及Collection接口的三个子接口Set,List,Queue. Java集合类简介: Java集合大致可以分为Set.List.Queue和Map四种体系,其中Set代表无序.不可重复的集合:List代表有序.重复的集合:而Map则代表具有映射关系的集合,Java 5 又增加了Queue体系集合,代表一种队列集合实现. Java集合就像一种容器,可以把多个对象(…
摘自:http://www.runoob.com/java/java-collections.html Java 集合框架 早在Java2之前,java 就提供了特设类.比如:Dictionary,Vector,Stack,和Properties这些类用来存储和操作对象组. 虽然这些类都非常有用,但是它们缺少一个核心的,统一的主题.由于这个原因,使用Vector类的方式和使用Properties类的方式有着很大不同. 集合框架被设计成要满足以下几个目标. 该框架必须是高性能的.基本集合(动态数组…
  Java Collections Framework是Java提供的对集合进行定义,操作,和管理的包含一组接口,类的体系结构.   Java集合框架的基本接口/类层次结构: java.util.Collection [I]+--java.util.List [I]   +--java.util.ArrayList [C]   +--java.util.LinkedList [C]   +--java.util.Vector [C]      +--java.util.Stack [C]+--…
1.映射表(Map) 1.1基本概念 1.2Map中常用的方法 package cn.jxufe.java.chapter7; import java.util.HashMap; import java.util.Map; public class Test09Map { public static void main(String[] args) { // TODO Auto-generated method stub function(); System.out.println(); fun…
一. 什么是集合: 在Java中提供了一些可以保存同一数据类型的数据集称为集合,就是规定了一些集合的规范(接口.抽象类.实现类)及方法, 方便我们程序在保存数据时进行增.删.改.查操作,编程更加高效. 二. List集合: List集合特性:List集合(ArrayList.LinkedList)是可重复的.有序的(是原始顺序) 1.ArrayList实现类:底层采用数组实现,查询可以通过下标快速点位,查询速度快,针对添.删.改速度慢 2.LinkedList实现类:底层采用双向链表实现,添加.…
最近刚学完集合框架,想把自己的一些学习笔记与想法整理一下,所以本篇博客或许会有一些内容写的不严谨或者不正确,还请大神指出.初学者对于本篇博客只建议作为参考,欢迎留言共同学习. 之前有介绍集合框架的体系概念(http://www.cnblogs.com/yjboke/p/8761195.html),本篇介绍一下Map的常用方法及常用工具类. map基本查询方法: 增加:put.putAll: 删除:remove(输如键进行删除).clear(删除集合所有元素) 查询:get(输入键查询值).siz…
△列表迭代器也是不支持在迭代的时候添加元素的,只是列表迭代器自己定义了增删的方法而已.迭代器可以看成实在两个元素之间的指针,每当调用next就跳过一个元素并返回刚刚跳过的元素. △HashTable不允许null作为键和值,而HashMap可以. △在Java中,所有链表实际上都是双向连接的,即每个节点还存放着指向前驱节点的引用 ,add方法将在listiterator迭代器位置前添加一个元素.尽管有Listiterator,但是对列表的并发修改仍然会产生异常,但是这里有个特例,set操作不被视…
一.概述 Map是一个包含键值对的集合,一个map不能有重复的键(key),而且每个键至多只能对应一个值.Map同Collection一样,它的所有通用实现都会提供一个转换器构造函数,接收一个Map类型集合,并以此初始化自己,这样只要是Map的实现都可以相互之间转换. 和List与Set一样,Map强化了equal和hashCode以能对两个Map对象实现逻辑上的比较.如果两个Map实例有相同的键值对,那么它们是相等的. Map的集合视角方法使Map可以像Collection一样进行操作元素 K…
  17.01 ArrayList集合的toString()方法源码解析 代码: Collection c = new ArrayList(); c.add("hello"); c.add("world"); c.add("java");   System.out.println(c);    输出c时默认调用的是c的toString()方法 A:Collection c = new ArrayList(); 这是多态,所以输出c的 toStri…
  16.01 ArrayList存储字符串并遍历 ArrayList类概述:底层数据结构是数组,查询快,增删慢,线程不安全,效率高 ArrayList类是List 接口的大小可变数组的实现.实现了所有可选列表操作,并允许包括 null在内的所有元素.除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小. 例: public class Practice { public static void main(String[] args) { ArrayList al =…
泛型: ... Map:一次添加一对元素.Collection 一次添加一个元素. Map也称为双列集合,Collection集合称为单列集合. 其实map集合中存储的就是键值对. map集合中必须保证键的唯一性. 常用方法:1,添加. value put(key,value):返回前一个和key关联的值,如果没有返回null. 2,删除. void clear():清空map集合. value remove(key):根据指定的key翻出这个键值对. 3,判断. boolean contain…
前言:因为最近要重新找工作,Collection(集合)是面试中出现频率非常高的基础考察点,所以好好恶补了一番. 复习过程中深感之前的学习不系统,而且不能再像刚毕业那样死背面试题,例如:String是固定长度的,StringBuffer和StringBuilder的长度是可以变化的.如果一旦问得深入一点,问为什么有这样的区别就傻眼了,只能一脸呆萌地看着面试官. 因此想要通过写文章的形式,系统地总结学习的内容,例如Collection架构是怎样的.有哪些相关的继承和接口实现,这样才能了解什么时候应…
Map接口与Collection不同: Collection中的集合元素是孤立的,可理解为单身,是一个一个存进去的,称为单列集合 Map中的集合元素是成对存在的,可理解为夫妻,是一对一对存进去的,称为双列集合 Map中存入的是:键值对,键不可以重复,值可以重复 Map接口中的常用集合: 1.HashMap:哈希表的存储结构,但是无法保证存取顺序 2.LinkedHashMap:存储数据采用的是哈希表和链表,可以有顺序 Map接口的常用方法: 示例: package demo; import ja…
Map的主要实现类: --HashMap:Map的主要实现类(掌握) --LinkedHashMap:使用链表维护添加进Map中的顺序,遍历时按添加时的顺序遍历 --TreeMap:按照添加进Map中的元素key的制定属性进行排序.(了解). --Hashtable 古老的实现类不建议使用 --Properties:常来处理属性文件,键和值都是String类型(掌握) 常用方法(不加泛型) Map map = new HashMap<>(); //Object put(Object key,O…
Map接口  * 将键映射到值的对象  * 一个映射不能包含重复的键  * 每个键最多只能映射到一个值 Map接口和Collection接口的不同 * Map是双列的,Collection是单列的 * Map的键唯一,Collection的子体系Set是唯一的 * Map集合的数据结构值针对键有效,跟值无关;Collection集合的数据结构是针对元素有效  Map集合的功能 添加功能  * V put(K key,V value):添加元素.   * 如果键是第一次存储,就直接存储元素,返回n…
1.Collections.synchronizedMap() 实现上在调用map所有方法时,都对整个map进行同步,而ConcurrentHashMap的实现却更加精细,它对map中的所有桶加了锁.所以,只要要有一个线程访问map,其他线程就无法进入map,而如果一个线程在访问ConcurrentHashMap某个桶时,其他线程,仍然可以对map执行某些操作.这样,ConcurrentHashMap在性能以及安全性方面,明显比Collections.synchronizedMap()更加有优势…
业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一章-初识java JAVA基础第二章-java三大特性:封装.继承.多态 JAVA基础第三章-类与对象.抽象类.接口  JAVA基础第四章-集合框架Collection篇 在上一章节中,我们讲了集合框架的Collection部分,下面我们来讲一下Map接口 我们再看一下集合框架的结构图 map接口的…
JavaSE学习总结第15天_集合框架1 15.01 对象数组的概述和使用15.02 对象数组的内存图解15.03 集合的由来及与数组的区别15.04 集合的继承体系图解15.05 Collection集合的功能概述15.06 Collection集合的基本功能测试15.07 Collection集合的高级功能测试15.08 集合的遍历之集合转数组遍历15.09 Collection存储自定义对象并遍历案例(使用数组)15.10 集合的遍历之迭代器遍历15.11 Collection存储自定义对…
对于集合框架,是非常重要的知识,是程序员必须要知道的知识点. 但是我们为什么要引入集合框架呢? 我们之前用过数组存储数据,但是采用数组存储存在了很多的缺陷.而现在我们引用了集合框架,可以完全弥补了数组的缺陷.它灵活,使用,提高软件的开发效率.并且不同的集合适用于不同的场合. 集合框架的好处: 1.容量自增长: 2. 提供有用的数据结构和算法,从而减少编程工作: 3. 提高了程序速度和质量,因为它提供了高性能的数据结构和算法: 4. 允许不同 API 之间的互操作,API之间可以来回传递集合: 5…