02 2018 档案
摘要:映射表的基本思想是维护键-值对的关联,通过键来寻找值。下面是标准Java类库中几种Map的实现: (1) HashMap:Map基于散列表的实现,插入和查询键值对的开销是固定的。可以通过构造器设置容量和负载因子,以调整容器性能。它是默认选择。 (2) LinkedHashMap:类似于HashMap
阅读全文
摘要:Collection是List、Set、Queue的共同接口。Collection主要方法有: int size():返回当前集合中元素的数量 boolean add(E e):添加对象到集合 boolean remove(Object o):删除指定的对象 boolean contains(Obj
阅读全文
摘要:执行各种添加和移除的方法在Collection中都是可选操作的,这意味着实现类并不需要为这些方法提供实现。当我们调用这些方法时,将不会执行有意义的行为,而是通常抛出UnsupportedOperationException。 下面例子我们可以看出Collection的各种实现类中: (1) java
阅读全文
摘要:每个java.util容器都有其自己的Abstract类,它们提供了该容器接口的部分实现。下面是一个定制自己的Map的例子(List set就省略了): 定制自己的Map实现AbstractMap-->Map,需要实现[Set<Map.Entry<K,V>> entrySet()]方法 实现[Set
阅读全文
摘要:Collection生成器CollectionData CollectionData体现了适配器模式的设计思想,它能把实现Generator接口的类的对象(包括上一章数组中的各种RandomGenerator)都复制到自身当中。 Map生成器MapData 我们可以使用同样的方式生成Map,我们可以
阅读全文
摘要:与Arrays一样,Collections类中也有一些实用的static方法。 (1) 排序操作 reverse(List list):反转指定List集合中元素的顺序 shuffle(List list):对List中的元素进行随机排序(洗牌) sort(List list):对List里的元素根
阅读全文
摘要:下面是一个Java集合的简化图,我们可以看出,集合分Collection和Map两大部分: 接下来分别以下面几个章节介绍Java集合: Java集合(1):Collections工具类中的static方法 Java集合(2):两个生成器的例子:Collection生成器CollectionData及
阅读全文
摘要:Java标准类库的System.arraycopy()方法,及在java.utils.Arrays类中一套用于数组的static方法,都是操纵数组实用功能。下面分别介绍。 (1) 数组的复制 (2) 数组的比较 (3) 数组的排序和查找 (1) 数组的复制 System.arraycopy(源数组,
阅读全文
摘要:有时我们需要使用数组批量创建测试数据,接下来通过以下4点来举例。 (1) 使用Arrays.fill()填充数据 (2) 使用Random类中JDK1.8提供的新方法用来生成随机数 (3) 一个随机数生成器的实例 (4) 根据(3)中的随机数生成器创建包装类型的数组及通过转换器转换成基本类型的数组
阅读全文
摘要:通常,数组与泛型不能很好的结合,你不能实例化具有参数化类型的数组。擦除会移除参数类型信息,而数组必须知道它们所持有的确切类型。但是我们可以参数化数组本身。
阅读全文
摘要:我们对数组的基本看法是,你可以创建它们,通过使用整型索引值访问它们的元素,并且他们的尺寸不能改变。 但是有时候我们需要评估,到底是使用数组还是更加灵活的工具。数组是一个简单的线性序列,这使得元素访问非常快速。但是为这种速度所付出的代价是数组大小被固定,并且在其生命周期中不可改变。 无论使用哪种类型的
阅读全文

浙公网安备 33010602011771号