
Java集合
Lin_Dong_Tian
不积跬步,无以至千里!
展开
-
java集合学习(一)----java集合的框架
一、java集合框架图解 java中有几种常用的数据结构,主要分为Collection和Map两个主要接口(接口只提供方法,并不提供实现),而程序中最终使用的数据结构是继承自这些接口的数据结构类。二、集合与数组的区别 1)、数组声明了它容纳的元素的类型,而集合不声明。2)、数组是静态的,一个数组实例具有固定的大小,一旦创建了就无法改变容量...原创 2019-05-30 14:58:43 · 155 阅读 · 0 评论 -
java集合学习(二)--Collection接口
一、定义public interface Collection<E> extends Iterable<E> {} 它是一个接口,是高度抽象出来的集合,它包含了集合的基本操作:添加、删除、清空、遍历(读取)、是否为空、获取大小、是否保护某元素等等。 Collection接口的所有子类(直接子类和间接子类)都必须实现2种构造函数:不带参数的构造函...原创 2019-05-30 15:17:19 · 249 阅读 · 0 评论 -
java集合(三)--List接口及其实现类
一、定义:public interface List<E> extends Collection<E> 通过观察List接口的定义发现其继承得是Collection接口,所以继承了Collection接口中的所有方法:(1)Collection接口常用方法1. public boolean add(E e); //添加元素到集合2. public...原创 2019-05-30 16:36:30 · 6415 阅读 · 0 评论 -
java集合学习(四)---线程安全版的ArrayList和LinkedList
一、Collections.synchronizedList与CopyOnWriteArrayList ArrayList是线程不安全的,因此在并发编程时,经常会使用Collections.synchronizedList与CopyOnWriteArrayList来替代ArrayList,接下来对这两种list进行性能的比较。 Collections.synchro...原创 2019-05-30 17:23:22 · 5537 阅读 · 0 评论 -
java集合(五)--Map接口以及HashMap、HashTable、TreeMap
前面,已经系统的对List进行了学习。接下来,先学习Map,然后再学习Set;因为Set的实现类都是基于Map来实现的(如:HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的)。一、Map架构 如上图:(1)、Map 是映射接口,Map中存储的内容是键值对(key-value)。(2)、 AbstractMap 是继承...原创 2019-05-30 22:56:51 · 241 阅读 · 0 评论 -
java集合(六)--Iterator的fail-fast机制
一、简介 fail-fast 机制是java集合(Collection)中的一种错误机制。当多个线程对同一个集合的内容进行操作时,就可能会产生fail-fast事件。即:当某一个线程A通过iterator去遍历某集合的过程中,若该集合的内容被其他线程所改变了(即其它线程通过add、remove、clear等方法,改变了modCount的值);那么线程A访问集合时,就会抛出Concurr...原创 2019-05-31 09:50:10 · 261 阅读 · 0 评论 -
java集合(七)-Set接口及HashSet、TreeSet
一、Set架构 Set的实现类都是基于Map来实现的(HashSet是通过HashMap实现的,TreeSet是通过TreeMap实现的)。Set 是继承于Collection的接口。它是一个不允许有重复元素的集合。 AbstractSet 是一个抽象类,它继承AbstractCollection,AbstractCollectio...原创 2019-05-31 11:54:29 · 226 阅读 · 0 评论 -
HashMap与红黑树
一、为什么需要HashMap? 在我们写程序的时候经常会遇到数据检索等操作,对于几百个数据的小程序而言,数据的存储方式或是检索策略没有太大影响,但对于大数据,效率就会差很远。1、线性检索:线性检索是最为直白的方法,把所有数据都遍历一遍,然后找到你所需要的数据。其对应的数据结构就是数组,链表等线性结构,这种方式对于大数据而言效率极低,其时间复杂度为O(n)。2、二分搜索:...原创 2019-07-03 09:11:54 · 17439 阅读 · 4 评论