容器深入研究--SortedMap和LinkedHashMap前言本篇将讲述《Java编程思想》第17.8.2小节,SortedMap和第17.8.3小节,LinkedHashMap概述使用SortedMap,可以确保键处于排序状态。这使得它具有额外的功能,这些功能由SortedMap接口中的下列方法提供:Comparator comparator():返回当前Map使用的Comparato...
容器深入研究--理解Map前言本篇讲述《Java编程思想》第17.8小节,理解Map概述映射表(也称关联数组)的基本思想是它维护的键-值(对)关联,因此你可以使用键来查找值。标准的Java类库中包含了Map的几种实现,包括:HashMap,TreeMap,LinkedHashMap,WeakHashMap,ConcurrentHashMap,IdentityHashMap。 它们...
容器深入研究--队列前言本篇讲述《Java编程思想》第17.7小节,队列概述除了并发应用中,Queue在java中仅有两个实现是LinkedList和PriorityQueue,它们的差异在于排序行为而不是性能。示例public class QueueBehavior { private static int count=10; static <T> void t...
容器深入研究--Set和存储顺序前言本篇讲述《Java编程思想》第17.6小节,Set和存储顺序。1. 示例对Set中的TreeSet、HashSet、LinkedHashSet功能进行比较代码public class SetTest { public static void main(String[] args) { List<Integer> list...
容器深入研究--List的功能方法前言本篇讲述《Java编程思想》第17.5小节,List的功能方法概述 正如你所看到的,基本的List很容易使用:大多数时候只是调用add()添加对象,使用get()一次取出一个元素,以及调用iterator()获取用于该序列的Iterator。 下面例子中每个方法都涵盖了一组不同的动作:basicTest()中包含每个List都可以...
容器深入研究--可选操作前言本篇讲述《Java编程思想》第17.4小节,可选操作概述 执行各种不同的添加和移除的方法在Collection接口中都是可选操作。这意味着实现类并不需要这些方法提供功能定义。可选操作的具体实现与表现:一般是在Abstract类中实现特定的方法,但是该方法体内只有一条抛出UnsupportOperationException异常语句;从而继承该抽象类...
容器深入研究--Collection的功能方法前言本篇讲述《Java编程思想》第17.3小节,Collection的功能方法概述下面表格列出了可以通过collection执行的所有操作,它们是可以通过set或者list执行的所有操作(list中会有一些额外的方法)方法方法说明boolean add(T)确保容器持有具有泛型类型T的参数。如果没有将此参数添加进容器,则返回falseboolea...
容器深入研究--使用Abstract类前言本篇将要讲述《Java》编程思想第17.2.3小节,使用Abstract类概述对于产生用于容器的测试数据问题,另一个解放方式是创建定制的Collection和Map实现。每个java.util容器都有自己的Abstract类,它们提供了该容器的部分实现,因此你必须做的只是去实现那些产生想要容器所必需的方法。享元模式:可在普通解决方案需要过多对象,或者...
容器深入研究--Map生成器前言本篇讲述《Java编程思想》第17.2.2小节,Map生成器概述为了组装Map,每次调用Generator的next()方法都必须产生一个对象对(一个键和一个值):public class Pair<K, V> { public final K key; public final V value; public Pair(...