8月7日总结
8.7星期一
HashSet集合保证元素唯一性源码分析
HashSet集合添加一个元素的过程.
调用对象的 Get heshcode方法获取对象的哈希值
根据对象的哈值计算对象的存储位置
该位置是否有元素在
有
遍历该位置所有元素,和新存入的元素比较哈希值是互相同
没有
都不相同将元素存储到该位置
①有相同的
调用Pqugls()方法比较 对象内容是否相等
返问false
将元素存储到该位置
返回true
说明元素重复,不存储者
要保证元素的唯一性,需要重写hashCoder)和equals()
Linked Hash set集合特点_
①哈希表和链表实现的Set接口,具有可预测的迭代次序
②由链表保证元素有序,也就是说元素的存储和取出顺序是一致的
③由哈希表保证元素唯一,也就是说没有重复的元素
Treeset集合特点
①元素有序,具体的排序方式取决于构造方法Troesat();
Treeset(Compara tor compearator):根据指定比较器排序②没有带索引的方法,不能用普通dr循环遍历
②不包含重复元素集合
泛型
它提供了编译时类型安全检测机制,该机制允许在编译时检测到非法的类型,本质是参数化类型
参数化类型:将类型由原来具体的类型参数化,然后使用)调用,时传入具体的类型
泛型定义格式
<类型>:指定一种类型的格式。这里的类可以看成形参
<类型1,类型2>:指定多种类型的格式,用逗号格开
将来具体用时通给定类型可看成实参,实参类型只能是3用数据类型,
泛型好处:①把运行时的问题提前到了编译期间
②避免了强制类型转换
泛型类
格式:修饰符 class 类名<类型>行
eg:public class Genenic<T>{}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程