上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 19 下一页
摘要: 1,Comparable 简介 Comparable 是排序接口。 若一个类实现了Comparable接口,就意味着“该类支持排序”。 即然实现Comparable接口的类支持排序,假设现在存在“实现Comparable接口的类的对象的List列表(或数组)”,则该List列表(或数组)可以通过 C 阅读全文
posted @ 2018-07-19 16:42 xdyixia 阅读(459) 评论(0) 推荐(0) 编辑
摘要: 1,TreeSet介绍 1)TreeSet 是一个有序的集合,它的作用是提供有序的Set集合。2)TreeSet 继承于AbstractSet,所以它是一个Set集合,具有Set的属性和方法。3)TreeSet 实现了NavigableSet接口,意味着它支持一系列的导航方法。比如查找与指定目标最匹 阅读全文
posted @ 2018-07-19 11:37 xdyixia 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 1,HashSet介绍 1)HashSet 是一个没有重复元素的集合。2)它是由HashMap实现的,不保证元素的顺序,而且HashSet允许使用 null 元素。3)HashSet是非同步的。如果多个线程同时访问一个哈希 set,而其中至少一个线程修改了该 set,那么它必须 保持外部同步。这通常 阅读全文
posted @ 2018-07-19 11:27 xdyixia 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 1,List概括 List的框架图 (01) List 是一个接口,它继承于Collection的接口。它代表着有序的队列。 (02) AbstractList 是一个抽象类,它继承于AbstractCollection。AbstractList实现List接口中除size()、get(int lo 阅读全文
posted @ 2018-07-19 11:04 xdyixia 阅读(401) 评论(0) 推荐(0) 编辑
摘要: Map的单元是对键值对的处理,之前分析过的两种Map,HashMap和LinkedHashMap都是用哈希值去寻找我们想要的键值对,优点是理想情况下O(1)的查找速度。 那如果我们在一个对查找性能要求不那么高,反而对有序性要求比较高的应用场景呢? 这个时候HashMap就不再适用了,我们需要一种新的 阅读全文
posted @ 2018-07-19 10:32 xdyixia 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 虽然我推测是链表形成闭环,但 没有去证明过。从网上找了一下: http://blog.csdn.net/autoinspired/archive/2008/07/16/2662290.aspx 里面也有提到: 产生这个死循环的根源在于对一个未保护的共享变量 — 一个”HashMap”数据结构的操作。 阅读全文
posted @ 2018-07-19 09:53 xdyixia 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 先盗两张图感受一下(来自:https://blog.csdn.net/justloveyou_/article/details/71713781) HashMap和双向链表的密切配合和分工合作造就了LinkedHashMap。特别需要注意的是,next用于维护HashMap各个桶中的Entry链,b 阅读全文
posted @ 2018-07-18 17:43 xdyixia 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 代码版本 JDK每一版本都在改进。本文讨论的HashMap和HashTable基于JDK 1.7.0_67 1. 时间 HashTable产生于JDK 1.1,而HashMap产生于JDK 1.2。从时间的维度上来看,HashMap要比HashTable出现得晚一些。 2. 作者 以下是HashTa 阅读全文
posted @ 2018-07-18 11:20 xdyixia 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现在各类的面试题中,重要性可见一斑。本文会对java集合框架中的对应实现HashMap的实现原理进行 阅读全文
posted @ 2018-07-17 23:07 xdyixia 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 问题:将m进制num转换为n进制 (2 <= m,n <= 62) ? 总体思路是:先将m进制转换为10进制,再将10进制转为n进制。 1、m进制数num转为10进制 从低位到高位按权展开即可。 例如:8进制1356 转为10进制 6*8^0 + 5 * 8^1 + 3 * 8^2 + 1 * 8^ 阅读全文
posted @ 2018-07-17 21:11 xdyixia 阅读(501) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 19 下一页