最后
俗话说,好学者临池学书,不过网络时代,对于大多数的我们来说,我倒是觉得学习意识的觉醒很重要,这是开始学习的转折点,比如看到对自己方向发展有用的信息,先收藏一波是一波,比如如果你觉得我这篇文章ok,先点赞收藏一波。这样,等真的沉下心来学习,不至于被找资料分散了心神。慢慢来,先从点赞收藏做起,加油吧!
另外,给大家安排了一波学习面试资料:
以上就是本文的全部内容,希望对大家的面试有所帮助,祝大家早日升职加薪迎娶白富美走上人生巅峰!
集合框架 是定义在 java.util 包下的一组接口和实现类,也就是说:我们以后使用集合,都需要导入 java.util 包。集合有很多,那么说 util 包下有很多集合类。还有一些接口和实现类。
==========================================================================
==============================================================================
使用成熟的集合框架,有助于我们便捷、快速的写出高效、稳定的代码
学习背后的数据结构知识,有助于我们理解各个集合的优缺点及使用场景
=========================================================================================
1. HashMap 了解不,介绍一下,如果一个对象为 key 时,hashCode 和 equals 方法的用法要注意什么?
2. HashSet 和 HashMap 的区别是什么?
3. HashMap 是线程安全的么?那需要线程安全需要用到什么?
1. ArrayList 和 LinkedList 的区别是什么?
2. 有了解过 HashMap 的具体实现么?
3. HashMap 和 ConcurrentHashMap 哪个效率更高?
1. 编程题:判断一个链表是否是一个回文链表。
2. Redis 的 zset 类型对应到 java 语言中大致是什么类型?
3. hashCode 主要是用来做什么用的?
别着急,后面的博客,都慢慢讲到的。
============================================================================
注意:
Collection是一个接口,不是一个类,所以不要傻里傻气的直接就去new。
接口是不能实例化的。
下面我们 ArrayList 实现类来验证Collection接口的功能。
功能1 - boolean add(E e) - 将元素 e 放入集合中 - E 是泛型指定的数据类型
现在,我们不想它这么这样,来者不拒。我们想要它指定放入一个数据类型的数据。
来看看怎么做!
clear功能【清除集合中的所有元素】 | isEmpty功能【判断集合是否没有任何元素,俗称空集合】
remove功能【如果元素e出现在集合中,删除第一个】 | size功能【返回集合中的元素个数】
remove 功能
size功能
但是!如果我们想用一个String类型的数组去接收返回来数组会出现问题,即使强转了类型
可参考 这篇文章数据类型和运算符,通过目录找到 标题为 类型转换,点过去,自行参考。
=====================================================================
选择对应的包地下Map,别粗心!
进入Map,观察其内部实现情况
下面通过实现Map接口功能,来一部部理解这两个参数(我们主要了解HashMap,因为它用的多,而且Hash 和 Treee 的功能几乎没有区别)
使用 put 功能 - 将指定的 k - v 放入Map | 使用 get功能 - 根据指定的 k 查找对应的 v
使用 getOrDefault功能 - 根据指定的 k 查找对应的 v,没有找到用默认值代替
containskey [判断是否包含key值] | containsValue[判断是否包含 value值]
前面例子都是以HashMap来讲解,其实HashMap 和 TreeMap 并没有多大区别。要说区别就是 TreeMap 句排序的功能。
实例
你只需要记住, HashMap 一定是无序的,TreeMap 一定是有序的。且两者都不受put数据的先后顺序的影响。HashMap 是根据它自己的哈希函数得出的哈希值来进行存储数据,而TreeMap 是通过某种比较大小的规则进行排序的。
现在,你不会对HashMap 和 TreeMap 的谁有序,谁有无序有疑惑了吧!
Hash 无序,Tree有序。这一点请记住。
==================================================================
具体的某个接口,由那些类实现了
最后
每年转战互联网行业的人很多,说白了也是冲着高薪去的,不管你是即将步入这个行业还是想转行,学习是必不可少的。作为一个Java开发,学习成了日常生活的一部分,不学习你就会被这个行业淘汰,这也是这个行业残酷的现实。
如果你对Java感兴趣,想要转行改变自己,那就要趁着机遇行动起来。或许,这份限量版的Java零基础宝典能够对你有所帮助。
不管你是即将步入这个行业还是想转行,学习是必不可少的。作为一个Java开发,学习成了日常生活的一部分,不学习你就会被这个行业淘汰,这也是这个行业残酷的现实。
如果你对Java感兴趣,想要转行改变自己,那就要趁着机遇行动起来。或许,这份限量版的Java零基础宝典能够对你有所帮助。
[外链图片转存中…(img-2OQmU9j2-1715822854231)]