随笔分类 -  集合

摘要:Q:STL中set底层实现方式? 为什么不用hash? A: 第一个问题:set底层实现方式为RB树(即红黑树)。 第二个问题: 首先set,不像map那样是key-value对,它的key与value是相同的。关于set有两种说法,第一个是STL中的set,用的是红黑树;第二个是hash_set, 阅读全文
posted @ 2020-04-10 18:24 那些年的代码 阅读(3924) 评论(0) 推荐(0)
摘要:HashMap 是内部基于哈希表实现,该类继承AbstractMap,实现Map接口 Hashtable 线程安全的,而 HashMap 是线程不安全的 Properties 类 继承了 Hashtable 类,而 Hashtable 类则继承Dictionary 类 HashMap允许将 null 阅读全文
posted @ 2019-06-13 16:44 那些年的代码 阅读(376) 评论(0) 推荐(0)
摘要:今天发一篇”水文”,可能很多读者都会表示不理解,不过我想把它作为并发序列文章中不可缺少的一块来介绍。本来以为花不了多少时间的,不过最终还是投入了挺多时间来完成这篇文章的。 网上关于 HashMap 和 ConcurrentHashMap 的文章确实不少,不过缺斤少两的文章比较多,所以才想自己也写一篇 阅读全文
posted @ 2019-06-10 14:21 那些年的代码 阅读(248) 评论(0) 推荐(0)
摘要:在java语言中,提供多种不同的结构来组织对象,Set(集合)是其中的一种,本身是一个接口,其迭代时的顺序取决于其具体实现。典型的实现包括:HashSet:哈希表是通过使用称为散列法的机制来存储信息的,元素并没有以某种特定顺序来存放; LinkedHashSet:以元素插入的顺序来维护集合的链接表, 阅读全文
posted @ 2019-06-06 14:32 那些年的代码 阅读(11931) 评论(0) 推荐(0)
摘要:当Set使用自己创建的类型时,存储的顺序如何维护,在不同的Set实现中会有不同,而且它们对于在特定的Set中放置的元素类型也有不同的要求: 在HashSet打*号,表示如果没有其他的限制,这就应该是默认的选择,因为它的速度很快。 你必须为散列存储和树形存储都定义一个equals()方法,但是hash 阅读全文
posted @ 2019-06-06 14:31 那些年的代码 阅读(493) 评论(0) 推荐(0)
摘要:TreeSet使用元素的自然顺序对元素进行排序,或者根据创建set时提供的Comparator进行排序,具体取决于使用的构造方法。通俗一点来说,就是可以按照排序后的列表显示,也可以按照指定的规则排序。Set<String> set = new TreeSet<String>(); set.add(" 阅读全文
posted @ 2019-06-06 14:29 那些年的代码 阅读(2266) 评论(0) 推荐(0)
摘要:java中Set集合是一个不包含重复元素的Collection,首先我们先看看遍历方法 package com.sort; package com.sort; import java.util.HashSet; import java.util.HashSet; import java.util.I 阅读全文
posted @ 2019-06-06 14:28 那些年的代码 阅读(8933) 评论(0) 推荐(0)
摘要:我们经常听说List是有序且可重复的,Set是无序且不重复的。这是一个误区,这里所说的顺序有两个概念,一是按照添加的顺序排列,二是按,照自然顺序a-z排列。Set并不是无序的传统所说的Set无序指的是HashSet,它不能保证元素的添加顺序,更不能保证自然顺序,而Set的其他实现类是可以实现这两种顺 阅读全文
posted @ 2019-06-05 19:00 那些年的代码 阅读(4691) 评论(1) 推荐(1)
摘要:转载:http://www.cnblogs.com/lzrabbit/p/3721067.html#h1 HashMap和Hashtable的区别 HashMap计算hash对key的hashcode进行了二次hash,以获得更好的散列值,然后对table数组长度取摸 HashSet和HashMap 阅读全文
posted @ 2019-06-05 18:18 那些年的代码 阅读(642) 评论(0) 推荐(0)
摘要:HashMap和HashSet的区别是Java面试中最常被问到的问题。如果没有涉及到Collection框架以及多线程的面试,可以说是不完整。而Collection框架的问题不涉及到HashSet和HashMap,也可以说是不完整。HashMap和HashSet都是collection框架的一部分, 阅读全文
posted @ 2019-06-05 18:15 那些年的代码 阅读(55042) 评论(3) 推荐(9)