概述 java.util.Hashtable<K,V>集合 implements Map<K,V>接口 Hashtable:底层也是一个哈希表,是一个线程安全的集合,是单线程集合,速度慢 HashMap:底层是一个哈希表,是一个线程不安全的集合,是多线程的集合,速度快 HashMap集合(之前学的所 ...
分类:
其他好文 时间:
2019-07-25 23:21:05
阅读次数:
108
我先学习 Map 集合类,然后再学习 Collection 类; 1、HashMap 和 Hashtable 这两兄弟经常被放到一起来比较,那么它们有什么不一样呢? a. HashMap 不是线程安全的;HashTable 是线程安全的,其线程安全是通过Sychronize实现。 b. 由于上述原因 ...
分类:
编程语言 时间:
2019-07-24 22:42:11
阅读次数:
179
Map:用来存储键值对的,通过键来标识,键如果重复,新的键值将覆盖旧的Map是一个接口,实现类有HashMap,TreeMap,HashTable,PropertiesMap<Integer,String>m=newHashMap<>();//要增加泛型Map<Integer,String>m2=newHashMap<>();m.put(1,"ad"
分类:
编程语言 时间:
2019-07-18 10:49:22
阅读次数:
122
HashMap 底层数组+链表实现,可以存储null键和null值,线程不安全 初始size为16,扩容:newsize = oldsize*2,size一定为2的n次幂 扩容针对整个Map,每次扩容时,原来数组中的元素依次重新计算存放位置,并重新插入 插入元素后才判断该不该扩容,有可能无效扩容(插 ...
分类:
其他好文 时间:
2019-07-17 19:13:17
阅读次数:
101
转自:https://blog.csdn.net/wildlifeking/article/details/58605587 在C#中,数组由于是固定长度的,所以常常不能满足我们开发的需求。 由于这种限制不方便,所以出现了ArrayList。 ArrayList、List<T> ArrayList是 ...
本文首先针对 Java 集合接口进行了一些介绍,并对这些接口的实现类进行详细描述,包括 LinkedList、ArrayList、Vector、Stack、Hashtable、HashMap、WeakHashMap 等,然后对一些实现类的实现方式和使用经验进行讲解,同时重点介绍 WeakHashMa ...
分类:
编程语言 时间:
2019-07-16 21:31:57
阅读次数:
129
本文首先针对Java集合接口进行了一些介绍,并对这些接口的实现类进行详细描述,包括LinkedList、ArrayList、Vector、Stack、Hashtable、HashMap、WeakHashMap等,然后对一些实现类的实现方式和使用经验进行讲解,同时重点介绍WeakHashMap。希望通过本文介绍,可以让读者对集合的操作方式、注意事项等有一些了解。在实际的项目开发中会有很多的对象,如何
分类:
编程语言 时间:
2019-07-16 21:29:46
阅读次数:
115
HashTable 底层数组+链表实现,无论key还是value都不能为null,线程安全,实现线程安全的方式是在修改数据时锁住整个HashTable,效率低,ConcurrentHashMap做了相关优化 初始size为11,扩容:newsize = olesize*2+1 计算index的方法: ...
分类:
其他好文 时间:
2019-07-16 12:47:02
阅读次数:
116
18.java 容器都有哪些? 19.Collection 和 Collections 有什么区别? 20.List、Set、Map 之间的区别是什么? 21.HashMap 和 Hashtable 有什么区别? 22.如何决定使用 HashMap 还是 TreeMap? 23.说一下 HashMa ...
分类:
其他好文 时间:
2019-07-16 10:30:01
阅读次数:
86
先来些简单的问题 “你用过HashMap吗?” “什么是HashMap?你为什么用到它?” 几乎每个人都会回答“是的”,然后回答HashMap的一些特性,譬如HashMap可以接受null键值和值,而HashTable则不能;HashMap是非synchronized;HashMap很快;以及Has ...
分类:
其他好文 时间:
2019-07-14 00:03:03
阅读次数:
59