前面,我们已经系统的对List和Map进行了 学习。接下来,我们开始可以学习Set。相信经过Map的了解之后,学习Set会容易很多。毕竟,Set的实现类都是基于Map来实现的(HashSet 是通过HashMap实现的,TreeSet是通过TreeMap实现的)。首先,我们看看Set架构。(01) ...
分类:
编程语言 时间:
2014-07-22 22:55:33
阅读次数:
213
概要这一章,我们对HashSet进行学习。我们先对HashSet有个整体认识,然后再学习它的源码,最后再通过实例来学会使用HashSet。内容包括:第1部分 HashSet介绍第2部分 HashSet数据结构第3部分 HashSet源码解析(基于JDK1.6.0_45)第4部分 HashSet遍历方...
分类:
编程语言 时间:
2014-07-22 22:54:55
阅读次数:
349
项目中我用到了字符串的split()方法,为这种方法的方便称赞,可是程序在测试的时候出现的问题折腾了我好久,原来在使用的时候存在着以下几个需要注意的地方。本来使用split()方法是判断String的数量,结果这么的不靠谱,最后换成了hashset动态添加字符串,然后求hashset.size()的...
分类:
编程语言 时间:
2014-07-22 22:51:15
阅读次数:
212
java的集合就那么几种总体为:List,Set,Map(都是接口由其子类去实现具体的方法)ArrayList,LinkedList,Vector都属于ListList:元素是有顺序的,元素可以重复因为每个元素有自己的角标(索引)|--ArrayList:底层的数据结构是数组结构,特点是:查询很快,...
分类:
移动开发 时间:
2014-07-22 22:51:14
阅读次数:
214
打个比方,hashCode() 方法是好比是字典前面的目录,有了这个目录你查东西就会快的多,equals方法是比较的内容,就好比根据目录查内容。同一个的内容自然要有唯一的目录,所以hashCode和equals方法一般一起实现。比如Student类的equals方法根据name,school,age...
分类:
其他好文 时间:
2014-07-18 20:25:51
阅读次数:
130
hashCode方法的作用:当有一个对象要存入hash集合的时候,JVM首先会调用hashCode方法获取该对象的哈希值,然后根据哈希值找到相应的存储区域,最后取出该区域的所有元素与该对象进行equals比较,如果相等,不存入该元素,否则,存入。这样不用遍历集合中的所有元素就能的到我们想要的结果,提...
分类:
编程语言 时间:
2014-07-18 17:23:53
阅读次数:
244
1.删除 1 public static void main(String[] args) { 2 HashSet hs=new HashSet(); 3 hs.add("mm"); 4 hs.add("kk"); 5 hs....
分类:
编程语言 时间:
2014-07-18 10:21:10
阅读次数:
168
Iterator(foreach)遍历时只能通过iterator去删除(添加)元素,不能直接通过集合对象删除或添加元素SetHashSet底层是一个HashMap HashSet添加元素,先判断hashCode,Set中没有相同的则直接添加,Set中有相同的元素,则进一步判断equals,不同则添加...
分类:
编程语言 时间:
2014-07-18 08:24:18
阅读次数:
225
Hadoop代码测试环境:Hadoop2.4原理:在Hadoop的MapReduce过程中,Mapper读取处理完成数据后,会把数据发送到Partitioner,由Partitioner来决定每条记录应该送往哪个reducer节点,默认使用的是HashPartitioner,其核心代码如下:/** Use {@link Object#hashCode()} to partition. */
p...
分类:
其他好文 时间:
2014-07-17 15:06:56
阅读次数:
315
1 public class Solution { 2 public int firstMissingPositive(int[] A) { 3 HashSet hash=new HashSet(); 4 int count=0; 5 int...
分类:
其他好文 时间:
2014-07-15 08:58:16
阅读次数:
239