CGBTN2111-DAY15总结复习(1)

《MySql面试专题》

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

《MySql性能优化的21个最佳实践》

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

《MySQL高级知识笔记》

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

文中展示的资料包括:**《MySql思维导图》《MySql核心笔记》《MySql调优笔记》《MySql面试专题》《MySql性能优化的21个最佳实践》《MySq高级知识笔记》**如下图

全网火爆MySql 开源笔记,图文并茂易上手,阿里P8都说好

关注我,点赞本文给更多有需要的人

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

5.增删操作比较慢,查询操作比较快[数据量比较大时]

1.4 LinkedList的特点:


1.List接口的实现类

2.底层的数据结构是链表,内存空间是不连续的

3.元素有下标,有序,允许存放重复的元素

4.通常进行首尾节点的操作比较多

5.增删操作比较快,查询操作比较慢[数据量比较大时]

注意:LinkedList的查询操作也不是都慢,首尾操作还是很快的

简单方法:

void addFirst(E e) 添加首元素

void addLast(E e) 添加尾元素

E removeFirst() 删除首元素

E removeLast() 删除尾元素

E getFirst() 获取首元素

E getLast() 获取尾元素

E element() 获取首元素

功能一致但是名字不太好记的方法:

boolean offer(E e) 添加尾元素

boolean offerFirst(E e) 添加首元素

boolean offerLast(E e) 添加尾元素

E peek() 获取首元素

E peekFirst() 获取首元素

E peekLast() 获取尾元素

E poll() 返回并移除头元素

E pollFirst() 返回并移除头元素

E pollLast() 返回并移除尾元素

2. Set接口


Set接口的特点


set集合没有重复的元素

set集合的元素是无序的

set集合可以存null值,并且null最多有一个

我们自定义对象如果想去重,需要在自定义类中添加重写的equals()与hashCode()

3. Map接口


Map接口的特点


  1. map集合的结构是:键值对、KEY与VALUE、Map.Entry<K,V>的映射关系

  2. map中key值不允许重复,如果重复,对应的value会被覆盖

  3. map中的映射关系是无序的

  4. map没有自己的迭代器,所以迭代时通常需要转成set集合来迭代

Map集合方法总结


简单方法:

void clear() 清空集合

boolean equals(Object o) 判断集合对象与参数o是否相等

int hashCode() 返回本集合的哈希码值

boolean isEmpty() 判断集合是否为空

int size() 返回本集合中键值对的个数

map单个集合间的操作

boolean containsKey(Object key) 判断map中是否包含指定的key

boolean containsValue(Object value) 判断map中是否包含指定的value

V get(Object key) 根据指定的key返回对应的value,如果不存在,返回null

V remove(Object key) 删除本集合中参数key对应的键值对

V put(K key, V value) 向集合中添加映射关系(键值对)

void putAll(Map<> m) 向本集合中添加m集合的所有映射关系(键值对)

map的迭代

Collection values() 把本map中的Value值取出放入一个Collection中并返回这个Collection

Set keySet() 把本map中的Key值取出放入一个Set集合中并返回这个Set集合

Set<Map.Entry<K,V>> entrySet()

把本map中的每一对KV都看成是一个Entry,把所有的Entry取出放入一个Set集合中并返回这个Set集合

HashMap的存储过程:


  1. HashMap的结构是数组+链表 或者 数组+红黑树 的形式

  2. HashMap底层的Entry[ ]数组,初始容量为16,加载因子是0.75f,扩容按约为2倍扩容

  3. 当存放数据时,会根据hash(key)%n算法来计算数据的存放位置,n就是数组的长度,其实也就是集合的容量

  4. 当计算到的位置之前没有存过数据的时候,会直接存放数据

  5. 当计算的位置,有数据时,会发生hash冲突/hash碰撞

解决的办法就是采用链表的结构,在数组中指定位置处以后元素之后插入新的元素

也就是说数组中的元素都是最早加入的节点

  1. 如果链表的长度>8并且数组长度>64时,链表会转为红黑树,当链表的长度<6时,会重新恢复成链表

在这里插入图片描述

作业:完成笔记HashMap的相关练习:2.4 练习:字符串中字符统计

需求:随机输入一串字符串,统计这串字符串中每个字母的出现次数

笔记链接 HashMap

集合学习的方法

写在最后

作为一名即将求职的程序员,面对一个可能跟近些年非常不同的 2019 年,你的就业机会和风口会出现在哪里?在这种新环境下,工作应该选择大厂还是小公司?已有几年工作经验的老兵,又应该如何保持和提升自身竞争力,转被动为主动?

就目前大环境来看,跳槽成功的难度比往年高很多。一个明显的感受:今年的面试,无论一面还是二面,都很考验Java程序员的技术功底。

最近我整理了一份复习用的面试题及面试高频的考点题及技术点梳理成一份“Java经典面试问题(含答案解析).pdf和一份网上搜集的“Java程序员面试笔试真题库.pdf”(实际上比预期多花了不少精力),包含分布式架构、高可扩展、高性能、高并发、Jvm性能调优、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、Mycat、Netty、Kafka、Mysql、Zookeeper、Tomcat、Docker、Dubbo、Nginx等多个知识点高级进阶干货!

由于篇幅有限,为了方便大家观看,这里以图片的形式给大家展示部分的目录和答案截图!

Java经典面试问题(含答案解析)

阿里巴巴技术笔试心得

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

存中…(img-8z2mjwmu-1715821888946)]

阿里巴巴技术笔试心得

[外链图片转存中…(img-u4dz8YDz-1715821888947)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值