线程安全与不安全集合 线程不安全集合: ArrayList LinkedList HashMap HashSet TreeMap TreeSet StringBulider 线程安全集合: Vector HashTable Properties 集合线程安全与解决方案 ArrayList线程安全问题 ...
分类:
编程语言 时间:
2020-07-17 22:03:41
阅读次数:
77
REDIS Redis简介 什么是Redis redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库(非关系性数据库)。 redis的优势 速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1) ...
分类:
其他好文 时间:
2020-07-17 09:41:32
阅读次数:
70
public Set<K> keySet() { Set<K> ks = keySet; if (ks == null) { ks = new KeySet(); keySet = ks; } return ks; } final class KeySet extends AbstractSet<K ...
分类:
其他好文 时间:
2020-07-16 18:08:10
阅读次数:
99
<%@page import="java.util.HashMap"%> <%@page import="java.util.Map"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UT ...
分类:
编程语言 时间:
2020-07-16 00:15:45
阅读次数:
90
if (p.hash == hash && ((k = p.key) == key || (key != null && key.equals(k)))) 源码中为什么使用了equals判断相等后,同时需要判断hash码是否相同? 这里需要注意的是key可以使对象即Object类型的,也可以是Lon ...
分类:
其他好文 时间:
2020-07-15 01:04:34
阅读次数:
72
551. 学生出勤记录 I 描述: 思路:字符串包含A的个数 和 是否包含“LLL” 552. 学生出勤记录 II 描述: 思路:动态规划。dp[0-n][0-1 A][0-1-2 L]。 状态转移根据题意分情况 添加P时候, 添加A的时候 L的时候。。 553. 最优除法 描述: 思路:题中说全部 ...
分类:
其他好文 时间:
2020-07-14 13:15:33
阅读次数:
42
目录 1、引出问题 2、结论 3、分析过程 4、总结 回到顶部 1、引出问题 在前面讲解 HashMap 的源码实现时,有如下几点: ①、初始容量为 1<<4,也就是24 = 16 ②、负载因子是0.75,当存入HashMap的元素占比超过整个容量的75%时,进行扩容,而且在不超过int类型的范围时 ...
分类:
编程语言 时间:
2020-07-14 12:58:55
阅读次数:
57
问:如何决定使用 HashMap 还是 TreeMap? 介绍 TreeMap<K,V>的Key值是要求实现java.lang.Comparable,所以迭代的时候TreeMap默认是按照Key值升序排序的;TreeMap的实现是基于红黑树结构。适用于按自然顺序或自定义顺序遍历键(key)。 Has ...
分类:
其他好文 时间:
2020-07-14 10:39:15
阅读次数:
55
一、HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包下的concurrentHash ...
分类:
其他好文 时间:
2020-07-12 20:50:02
阅读次数:
55
HashSet 的内部采用 HashMap 来实现。由于 Map 需要 key 和 value,所以 所有 key 的都有一个默认 value。类似于 HashMap,HashSet 不允许重复的 key,只允许有一个 null key,意思就是 HashSet 中只允许存储一个 null 对象。 ...
分类:
编程语言 时间:
2020-07-12 18:41:07
阅读次数:
96