通过看源码知道 HashSet 的实现是依赖于 HashMap 的,HashSet 的值都是存储在 HashMap 中的。在 HashSet 的构造法中会初始化一个 HashMap 对象,HashSet 不允许值重复,因此,HashSet 的值是作为 HashMap 的 key 存储在HashMap 中的,当存储的值已经存在时返回 false。 LinkedHashMap 也是基于 HashMap 实现的,不同的是它定义了一个 Entryheader,这个 header 不是放在 Table 里,它是额外独立出来的…

2021年10月3日 0条评论 30点热度 1人点赞 小小调酒师 阅读全文

支付 ¥1.99 购买本节后解锁剩余99%的内容 登录购买 OR 免登录购买 微信支付 如已付费购买,请 登录 或 免登录验证。

2021年10月2日 0条评论 33点热度 0人点赞 小小调酒师 阅读全文

这样的题比较考水平,两个方面的水平:一是要真正明白这些内容,二是要有较强的总结和表述能力。如果你明白,但表述不清楚,在别人那里则等同于不明白。 首先,List 与 Set 具有相似性,它们都是单列元素的集合,所以,它们有一个功共同的父接口,叫 Collection。Set 里面不允许有重复的元素,所谓重复,即不能有两个相等(注意,不是仅仅是相同)的对象 ,即假设 Set 集合中有了一个 A 对象,现在我要向 Set 集合再存入一个 B 对象,但 B 对象与 A 对象 equals 相等,则 B 对象存储不进去,所以…

2021年10月2日 0条评论 40点热度 0人点赞 小小调酒师 阅读全文

Java 中的 HashMap 是以键值对 (key-value) 的形式存储元素的。HashMap 需要一个 hash 函数,它使用 hashCode()和 equals()方法来向集合 / 从集合添加和检索元素。当调用 put() 方法的时候,HashMap 会计算 key 的 hash 值,然后把键值对存储在集合中合适的索引上。 如果 key 已经存在了,value 会被更新成新值。 HashMap 的一些重要的特性是它的容量 (capacity),负载因子 (load factor) 和扩容极限(thres…

2021年10月1日 0条评论 32点热度 0人点赞 小小调酒师 阅读全文

ArrayList 和 Vector 都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快而插入数据慢,Vector 由于使用了synchronized 方法(线程安全), 支付 ¥1.99 购买本节后解锁剩余46%的内容 登录购买 OR 免登录购买 微信支付 如已付费购买,请 登录 或 免登录验证。

2021年10月1日 0条评论 31点热度 0人点赞 小小调酒师 阅读全文

这两个类都实现了 List 接口(List 接口继承了 Collection 接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,并且其中的数据是允许重复的,这是HashSet 之类的集合的最大不同处,HashSet 之类的集合不可以按索引号去检索其中的元素,也不允许有重复的元素(本来题目问的与 hashset 没有任何关系,但为了说清楚 ArrayList 与 Vector 的功能,我们使用对比方式,更有利于说明问题)。接着才说 Ar…

2021年10月1日 0条评论 34点热度 0人点赞 小小调酒师 阅读全文

方法 1:通过 Scanner 方法 2:通过 BufferedReader

2021年10月1日 0条评论 28点热度 0人点赞 小小调酒师 阅读全文

final 关键字主要用在三个地方:变量、方法、类。 1、对于一个 final 变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象。 2、当用 final 修饰一个类时,表明这个类不能被继承。final 类中的所有成员方法都会被隐式地指定为 final 方法。 支付 ¥1.99 购买本节后解锁剩余49%的内容 登录购买 OR 免登录购买 微信支付 如已付费购买,请 登录 或 免登录验证。

2021年10月1日 0条评论 26点热度 0人点赞 小小调酒师 阅读全文

线程与进程相似,但线程是一个比进程更小的执行单位。一个进程在其执行的过程中可以产生多个线程。与进程不同的是同类的多个线程共享同一块内存空间和一组系统资源,所以系统在产生一个线程,或是在各个线程之间作切换工作时,负担要比进程小得多,也正因为如此,线程也被称为轻量级进程。 程序是含有指令和数据的文件,被存储在磁盘或其他的数据存储设备中,也就是说程序是静态的代码。 支付 ¥1.99 购买本节后解锁剩余62%的内容 登录购买 OR 免登录购买 微信支付 如已付费购买,请 登录 或 免登录验证。

2021年10月1日 0条评论 34点热度 0人点赞 小小调酒师 阅读全文

hashCode() 的作用是获取哈希码,也称为散列码;它实际上是返回一个 int 整数。这个哈希码的作用是确定该对象在哈希表中的索引位置。hashCode() 定义在 JDK 的 Object.java 中,这就意味着 Java 中的任何类都包含有 hashCode() 函数。 散列表存储的是键值对(key-value),它的特点是:能根据“键”快速的检索出对应的“值”。这其中就利用到了散列码!(可以快速找到所需要的对象) 支付 ¥1.99 购买本节后解锁剩余72%的内容 登录购买 OR 免登录购买 微信…

2021年10月1日 0条评论 44点热度 0人点赞 小小调酒师 阅读全文
123457