Java集合框架
文章平均质量分 88
chenzehe
这个作者很懒,什么都没留下…
展开
-
Java集合框架
集合是Java中是最常用的包,最常见的有Collection和Map两个接口的实现,Collection用于存放多个单对象,而Map用于存放Key-Value形式的键值对。 Collection中常见的又分两种常见类型的接口:List和Set,List支持存放重复的对象,而Set则不支持。List接口中常见的实现类有:ArrayList、LinkedList、Vector、和...原创 2013-01-25 20:19:50 · 65 阅读 · 0 评论 -
Java集合框架 Collection接口
1、ArrayList ArrayList是List接口最常见的实现,其实现是基于数组的方式实现,无容量的限制,ArrayList是非线程安全的。 如下代码为ArrayList的构造函数,当没有确定的容量大小时,默认长度为10: private transient Object[] elementData; public ArrayList(int initialCapacit...原创 2013-01-29 17:49:07 · 101 阅读 · 0 评论 -
Java集合框架 Map接口
1、HashMap HashMap是Map接口最常见的实现,HashMap是非线程安全的,其内部实现是一种基于一个数组和链表的结合体,如下table为HashMap中存储数据的字段: transient Entry[] table; static class Entry<K,V> implements Map.Entry<K,V> { f...原创 2013-01-30 18:34:48 · 75 阅读 · 0 评论 -
Java 并发集合CopyOnWriteArrayList
1、Java在JDK1.5之前基本上对所有集合都实现了线程同步版本synchronized*,用集合工具类Collections即可得到,如下都为Collections中的方法: static <T> Collections<T> synchronizedCollection(Collection<T> c) 返回指定 col...原创 2013-01-30 21:22:37 · 177 阅读 · 0 评论 -
Java 并发集合ConcurrentHashMap
ConcurrentHashMap是JDK1.5并发包中提供的线程安全的HashMap的实现,其包结构关系如下: public class ConcurrentHashMap<K, V> extends AbstractMap<K, V> implements ConcurrentMap<K, V>, Serializable { } ...原创 2013-02-01 18:00:21 · 80 阅读 · 0 评论 -
阻塞队列BlockingQueue
1、队列Queue介绍 Queue是JDK1.5引入的接口,继承Collection接口,是Collection框架的新成员,是种先进先出(FIFO)的队列。 public interface Queue<E> extends Collection<E>{ boolean add(E e); boolean offer(E e); E ...原创 2013-02-04 15:16:44 · 75 阅读 · 0 评论 -
面试题——在多线程环境下如何保证一个List集合中的元素不超过15个
这是有一次去面试被问到的,当时只知道用synchronized来保证同步,但面试官说除了此方式的其它实现,现在写下它的各种实现: 1、JDK1.5之前的内置锁synchronized实现 模仿JDK1.5之前同步集合SynchronizedList的实现,内部使用synchronized对一个对一个List的封装,如下代码: /** * @description * * ...原创 2013-02-22 19:16:40 · 573 阅读 · 0 评论 -
Comparable Comparator 的区别
注:本文为转载 当需要排序的集合或数组不是单纯的数字型时,通常可以使用Comparator或Comparable,以简单的方式实现对象排序或自定义排序。 一、Comparator public interface Comparator<T> { /** * @return o1小于、等于或大于o2,分别返回负整数、零或正整数。 */ ...原创 2013-09-03 14:34:13 · 81 阅读 · 0 评论