摘要:1. HashMap 的线程不安全性的体现: 主要是下面两方面: (1)多线程环境下,多个线程同时resize()时候,容易产生死锁现象。即:resize死循环 (2)如果在使用迭代器的过程中有其他线程修改了map,那么将抛出ConcurrentModificationException,即:fai
阅读全文
摘要:1. HashMap的实现原理之 HashMap数据结构: HashMap是对数据结构中哈希表(Hash Table)的实现, Hash表又叫散列表。Hash表是根据关键码Key来访问其对应的值Value的数据结构。 它通过一个映射函数把关键码Key映射到Hash表中一个位置来访问该位置的值Valu
阅读全文
摘要:1. Hashtable: (1)是一个包含单向链的二维数组,table数组中是Entry<K,V>存储,entry对象; (2)放入的value不能为空; (3)线程安全的,所有方法均用synchronized修饰; 2. HashMap: (1)相当于Hashtable的升级版本; (2)可以放
阅读全文
摘要:1. ConcurrentHashMap的初始化: 下面我们来结合源代码来具体分析一下ConcurrentHashMap的实现,先看下初始化方法: CurrentHashMap的初始化一共有三个参数: 一个initialCapacity,表示初始的容量; 一个loadFactor,表示负载参数; 最
阅读全文
摘要:1. ConcurrentHashMap简介: ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和Hashtable功能相同但是线程安全的方法。ConcurrentHashMap可以做到读取数据不加锁,并且其内部的结构可以让其在进行写操作的时候能够将锁
阅读全文
摘要:1. 哈希表数据结构(数组): 2. 哈希表确定元素是否相同: (1)判断的是两个元素的哈希值是否相同 如果相同,再判断两个对象内容是否相同 (2)判断哈希值相同,其实判断的是对象的hashCode的方法。 判断内容相同,其实使用的equals()方法 注意:如果哈希值不同,是不需要判断equals
阅读全文
摘要:1. Collection add() remove() contains() iterator() size() 遍历: 增强for 迭代器 |--List get() 遍历: 普通...
阅读全文
摘要:1.到底使用那种集合。 看需求是否是键值对象形式: 是:Map 键是否需要排序: 是:TreeMap 否:HashMap 不知道,就使用HashMap。 否:Collection 元素是否唯一: ...
阅读全文
摘要:1. 集合(1)Collection(单列集合) List(有序,可重复): ArrayList:底层数据结构是数组,查询块,增删慢。线程不安全,效率高 Vector:底层数据结构是数组,查询快,增删慢。线程安全,效率低 ...
阅读全文
摘要:1.模拟斗地主洗牌和发牌并对牌进行排序的原理图解:2. 代码实现:思路: • 创建一个HashMap集合 • 创建一个ArrayList集合 • 创建花色数组和点数数组 • 从0开始往HashMap里面存储编号,并存储对应的牌 同时往ArrayList里面存储编号即可。 •洗牌(洗的...
阅读全文
摘要:1. 模拟斗地主洗牌和发牌 分析: A:创建一个牌盒 B:装牌 C:洗牌 D:发牌 E:看牌 2. 代码实现: 运行效果,如下:
阅读全文
摘要:1. ArrayList存储自自定义对象并排序的案例:ArrayList存储自自定义对象,并使用Collections对ArrayList存储基本包装类的元素排序。2. 代码实现:(1)Student.java: 1 package cn.itcast_02; 2 3 /** 4 * @auth...
阅读全文
摘要:1. Collections类概述: 针对集合操作的工具类,都是静态方法。 2. Collection 和 Collections的区别: Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。 Collection是个java.util下的接口,它是各种集合结构的
阅读全文
摘要:至于Hashtable的实现原理,直接参考网友的博客,总结很全面: 深入Java集合学习系列:Hashtable的实现原理
阅读全文
摘要:1. HashMap和Hashtable区别 ? • Hashtable:线程安全,效率低。不允许null键和null值 • HashMap:线程不安全,效率高。允许null键和null值 2. HashMap和Hashtable区别总结: Hashtable、HashMap都是Map接口的实现类。
阅读全文
摘要:1.为了更符合要求: 这次的数据就看成是学生对象。传智播客 bj 北京校区 jc 基础班 林青霞 27 风清扬 30 jy 就业班 赵雅芝 28 武鑫 29 sh 上海校区 jc 基础班 郭美美 20...
阅读全文
摘要:1. ArrayList集合嵌套HashMap集合并遍历。 需求: 假设ArrayList集合的元素是HashMap。有3个。 每一个HashMap集合的键和值都是字符串。 元素我已经完成,请遍历。 结果: 周瑜---小乔 吕布---貂蝉 郭靖---黄蓉 杨过---...
阅读全文
摘要:1.ArrayList集合嵌套HashMap集合并遍历。需求:假设ArrayList集合的元素是HashMap。有3个。每一个HashMap集合的键和值都是字符串。元素我已经完成,请遍历。结果: 三国演义 吕布 周瑜 笑傲江湖 令狐冲 林平之 神雕侠侣 郭靖 杨过...
阅读全文
摘要:1. HashMap嵌套HashMap传智播客 jc 基础班 陈玉楼 20 高跃 22 jy 就业班 李杰 21 曹石磊 23先存储元素,然后遍历元素2. 代码示例: 1 package cn...
阅读全文
摘要:1. 首先我们看看统计字符串中每个字符出现的次数的案例图解:2. 代码实现:(1)需求 :"aababcabcdabcde",获取字符串中每一个字母出现的次数要求结果:a(5)b(4)c(3)d(2)e(1)分析: A: 定义一个字符串(可以改进为键盘录入) B: 定义一个TreeMap集合 ...
阅读全文