Java进阶 - [1-5] 集合容器】的更多相关文章

一.背景 容器是Java编程中使用频率很高的组件,但Java默认提供的基本容器(ArrayList,HashMap等)均不是线程安全的.当容器和多线程并发编程相遇时,程序员又该何去何从呢? 通常有两种选择: 1.使用synchronized关键字,将对容器的操作有序错开,确保同一时刻对同一个容器只存在一个操作.Vector,HashTable等封装后的容器本质也是这种解决思路,只不过synchronized关键字不需要我们来书写而已. 2.使用java.util.concurrent包下提供的并…
map集合排序         这篇文章讲的不仅仅是map排序,比如把对象按某一属性排序,它都可以解决这些问题.   比如,有N个对象,每个对象有个属性就是成绩,成绩分:优秀,良好,合格.那我们如何按照成绩的好坏进行排序呢,下面请看代码.   1.people对象 package com.test; /*people对象其实很简单,就提供了三个属性*/ class People { private String Name; //姓名 private String Score; //成绩 priv…
目录 1.集合 1.1.集合是什么 1.2.集合框架结构 1.2.1.Collection 1.2.2.Map 1.3.集合接口实现类 1.3.1.LinkedList 1.3.2.ArrayList 1.3.3.HashSet 1.3.4.TreeSet 1.3.5.HashMap 1.3.6.TreeMap 2.泛型 1.集合 1.1.集合是什么 之前的基础篇中我们知道了一种数据结构:数组,可以存放很多数据.但是数据有很大的局限性: 支持的数据类型单一 声明时需要指定大小,大小固定,可扩展性…
一.TreeSet集合简单 1.TreeSet集合底层是一个TreeMap 2.TreeMap集合底层是一个二叉树 3.放到TreeSet集合的元素等同于放到TreeMap集合的Key部分 4.TreeSet集合中元素:无序不可重复,但是可以按照元素大小顺序自动排序,称为可排序集合. 5.二叉树数据机构包含:Key,Value,left,right,parent 6.TreeSet集合或TreeMap集合的Key部分元素想做到排序,包含以下两种方式: 第一种:放在集合中元素需要实现Java.la…
一.HashMap简介 1.HashMap底层是哈希表结构,类似字典,初始化如下: 2.哈希表结构: 是一个数组+单向链表的结构体 数组:查询效率较高,随机增删效率很低 单向链表:在随机增删方面效率较高,查询方面效率很低 哈希表将以上两种数据结构融合在一起,充分发挥它们各自的优点. 3.HashMap集合底层是数组,Node<k,v>[]tables; hash为哈希值,是HashCode方法执行的结果,通过哈希算法可以转换为数组的下标: key,value为Map的key与value,nex…
1.java基础 1.JDK 和JRE有什么区别 ​ JDK:java开发工具包,java开发运行环境.包含了JRE. ​ JRE:java运行环境,包含java虚拟机,java基础类库. 2.java基础类库 1. java.lang:java语言设计的基础类 2. java.util :提供处理日期.时间.随机数等工种工具的类 3. java.io:输入输出相关的类 4. java.nio:提供缓冲区类 5. java.beans:开发JavaBeans相关的类 6. .... 3.两个对象…
Java集合容器主要有以下几类: 1,内置容器:数组 2,list容器:Vetor,Stack,ArrayList,LinkedList, CopyOnWriteArrayList(1.5),AttributeList(1.5),RoleList(1.5),RoleUnresolvedList(1.5), ConcurrentLinkedQueue(1.5),ArrayBlockingQueue(1.5),LinkedBlockingQueue(1.5), PriorityQueue(1.5),…
目录 JAVA中的集合容器操作类 List集合 ArrayList的操作方法说明 LinkedList Stack Set Map Queue 总结 JAVA中的集合容器操作类 Java容器类库总共分为两个概念: Collection.标识所含元素的序列,这里面又包含多种集合类,比如List,Set,Queue:它们都有各自的特点,比如List是按顺序插入元素,Set是不重复元素集合,Queue则是典型的FIFO结构 Map.这是一个"键值对"的集合对象,允许你通过键来查找值.把你的键…
Java集合容器主要有以下几类: 1,内置容器:数组 2,list容器:Vetor,Stack,ArrayList,LinkedList, CopyOnWriteArrayList(1.5),AttributeList(1.5),RoleList(1.5),RoleUnresolvedList(1.5), ConcurrentLinkedQueue(1.5),ArrayBlockingQueue(1.5),LinkedBlockingQueue(1.5), PriorityQueue(1.5),…
对象数组 对象数组中的每个元素都是对象的管理者而非对象本身 对象数组的for—each循环 集合容器(HashSet) HashSet 数学中的集合,元素间满足互异性.确定性.无序性 HashSet<String> s=new HashSet<String>(); s.add("first"); s.add("second"); System.out.println(s); 任何类中只要有public String toString(),都可…