一、Java中的hashCode和equals 1、关于hashCode hashCode的存在主要是用于查找的快捷性,如Hashtable,HashMap等,hashCode是用来在散列存储结构中确定对象的存储地址的 如果两个对象相同,就是适用于equals(java.lang.Object) 方 ...
分类:
编程语言 时间:
2020-03-26 01:41:32
阅读次数:
89
TreeSet ? TreeSet 底层就是一个 TreeMap (是一个简化版的TreeMap),当我们使用 TreeSet 的构造方法创建 TreeSet 对象,同时会创建一个TreeMap 对象,当你调用 add 方法向 TreeSet 添加元素,会在 add() 方法中调用 TreeMap ...
分类:
其他好文 时间:
2020-03-25 21:52:46
阅读次数:
108
1.ConcurrentHashMap ConcurrentHashMap使用分段锁保证线程安全,效率比使用synchronized的HashTable高很多,每个集合都可以看做一个存储东西的房子,HashTable与ConcurrentHashMap存储的都是HashEntry数组(每个数组里面是链表)
分类:
其他好文 时间:
2020-03-25 12:07:56
阅读次数:
109
java.util.Set接口 extends Collection接口Set接口的特点: 1.不允许存储重复的元素 2.没有索引,没有带索引的方法,也不能使用普通的for循环遍历java.util.HashSet集合 implements Set接口HashSet特点: 1.不允许存储重复的元素 ...
分类:
其他好文 时间:
2020-03-23 20:43:31
阅读次数:
72
简介: 并发队列Queue,队列其实就是一个容器 1.同步容器 Vector容器,HashTable容器,都是线程安全 如果同步容器使用foreach迭代过程中修改了元素的值,则会出现ConcurrentModificationException异常 可以使用iterator迭代器解决,但是在多线程 ...
分类:
其他好文 时间:
2020-03-23 18:31:25
阅读次数:
67
前缀查询:查询字典树中是否存在以指定字符串为前缀的单词! mport java.util.TreeMap; public class Trie { private class Node{ public boolean isWord; public TreeMap<Character, Node> n ...
分类:
其他好文 时间:
2020-03-23 15:11:00
阅读次数:
54
1、属性 //底层使用了HashMap来存储元素,所以元素不可能出现重复 private transient HashMap<E,Object> map; //用来填充底层数据结构HashMap中的value,因为HashSet只用key存储数据。 private static final Obje ...
分类:
其他好文 时间:
2020-03-23 11:29:06
阅读次数:
69
18. Java 容器都有哪些? Java 容器分为 Collection 和 Map 两大类,其下又有很多子类,如下所示: Collection List ArrayList LinkedList Vector Stack Set HashSet LinkedHashSet TreeSet Map ...
分类:
编程语言 时间:
2020-03-23 00:12:20
阅读次数:
63
1、存储结构 private static class Entry<K,V> implements Map.Entry<K,V> { final int hash; final K key; V value; Entry<K,V> next; protected Entry(int hash, K ...
分类:
其他好文 时间:
2020-03-21 12:46:07
阅读次数:
64
java 并发包学习 1: ConcurrentHashMap: ConcurrentHashMap : 线程安全效率高于hashTable, jdk1.7中使用的是分段锁, 将数据分成多个hashTable,避免了多个线程竞争同一把锁,导致效率低下 在JDK1.7和JDK1.8中的区别: 在JDK ...
分类:
编程语言 时间:
2020-03-20 12:29:26
阅读次数:
71