1. HashMap的实现原理之 HashMap数据结构: HashMap是对数据结构中哈希表(Hash Table)的实现, Hash表又叫散列表.Hash表是根据关键码Key来访问其对应的值Value的数据结构. 它通过一个映射函数把关键码Key映射到Hash表中一个位置来访问该位置的值Value,从而加快查找的速度.这个映射函数叫做Hash函数,存放记录的数组叫做Hash表. 在Java中,HashMap的内部实现结合了链表和数组的优势,链接节点的数据结构是Entry<k,v>,每个En…
1. ConcurrentHashMap简介: ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和Hashtable功能相同但是线程安全的方法.ConcurrentHashMap可以做到读取数据不加锁,并且其内部的结构可以让其在进行写操作的时候能够将锁的粒度保持地尽量地小,不用对整个ConcurrentHashMap加锁(实际上就是对哈希表加锁). 2. ConcurrentHashMap的内部结构: ConcurrentHashMap为了提高本身…
至于Hashtable的实现原理,直接参考网友的博客,总结很全面: 深入Java集合学习系列:Hashtable的实现原理…
1. ArrayList集合嵌套HashMap集合并遍历.  需求:         假设ArrayList集合的元素是HashMap.有3个.         每一个HashMap集合的键和值都是字符串.         元素我已经完成,请遍历. 结果:      周瑜---小乔      吕布---貂蝉       郭靖---黄蓉      杨过---小龙女      令狐冲---任盈盈     林平之---岳灵珊 2. 代码示例: package cn.itcast_05; import…
1. ArrayList集合嵌套HashMap集合并遍历. 需求:假设ArrayList集合的元素是HashMap.有3个.每一个HashMap集合的键和值都是字符串.元素我已经完成,请遍历. 结果:    三国演义    吕布    周瑜    笑傲江湖    令狐冲    林平之    神雕侠侣    郭靖    杨过 2. 代码示例: package cn.itcast_05; import java.util.ArrayList; import java.util.HashMap; im…
1. 比较器排序(定制排序) 前面我们说到的TreeSet的自然排序是根据集合元素的大小,TreeSet将它们以升序排列. 但是如果需要实现定制排序,比如实现降序排序,则要通过比较器排序(定制排序)实现. 比较器排序是通过Comparator接口帮助的,这个接口包含一个方法int compare(T o1, T o2)方法,该方法用于比较o1和o2的大小: 如果方法返回正整数,则表明o1 大于 o2 如果方法返回0,则表明o1 等于 o2 如果方法返回负整数,则表明o1 小于 o2 int co…
1. HashSet类的概述: (1)不保证set的迭代顺序 (2)特别是它不保证该顺序恒久不变 HashSet底层数据结构是哈希表,哈希表依赖于哈希值存储,通过哈希值来确定元素的位置,  而保证元素唯一性是通过hashCode方法 和 equals方法完成的. 当哈希值不相同的时候,不需要判断equals方法,只要当哈希值相同才会判断equals方法. 2. HashSet如何保证元素唯一性 保证元素唯一性,底层依赖于两个方法:   • int hashCode()   • boolean e…
1. 去除ArrayList集合中的重复字符串元素(字符串内容相同) 分析: (1)创建集合对象 (2)添加多个字符串元素(包含重复的) (3)创建新的集合 (4)遍历旧集合,获取得到每一个元素 (5)拿着个元素到新集合中去找,看有没有   有:不搭理它 没有:添加到新集合      (6)遍历新集合 2. 案例代码: package cn.itcast_04; import java.util.ArrayList; import java.util.Iterator; /* * ArrayLi…
1. Collection的迭代器: Iterator iterator():迭代器,集合的专用遍历方式 2. 代码示例: package cn.itcast_03; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; /* * Iterator iterator():迭代器,集合的专用遍历方式 * Iterator(迭代器): * Object next():获取元素,并移动到下…
1.Collection集合的遍历 Collection集合直接是不能遍历的,所以我们要间接方式才能遍历,我们知道数组Array方便实现变量,我们可以这样: 使用Object[]  toArray():把集合转化成数组,可以实现集合的遍历 代码实现: package cn.itcast_01; import java.util.ArrayList; import java.util.Collection; /* * 集合的遍历.其实就是依次获取集合中的每一个元素. * * Object[] to…