当前位置:   article > 正文

集合知识点整理及其他_collection.remove性能问题

collection.remove性能问题

集合思维导图

在这里插入图片描述

collection

继承了iterator接口,使其增强了for循环(foreach)

collection接口的remove()方法与iterator接口的remove()方法的区别

1.参数方面:
collection的remove()方法有参
iterator的remove()方法无参
2.性能方面:
collection的remove()方法效率比iterator的remove()方法的效率低
collection的remove()方法,它的底层是链表结构,虽然他指定删除某个元素,但是他要一个一个区找,效率就比较低
iterator的remove()方法没有参数,它不知道删谁,就结合next()方法使用,直接删除下一个,所以效率会更高
3.容错方面:
collection的remove()方法可能会报错
iterator的remove()方法不会报错
在这里插入图片描述

ArrayList和LinkList的区别:

ArrayList(数组结构):查询快
LinkedList(链表结构):增、删、改快
在这里插入图片描述

List、Set、Map之间的区别

① List和Set都继承了collection接口,Map没有;
② List有序、Set无序、Map无序;
③ List可重复,Set不可重复,Map键值对存储,键不可重复、值不可重复;
④ List可插入多个null元素,Set只允许一个null元素,Map的键只允许一个null,值可允许有多个null
在这里插入图片描述

HashSet、TreeSet、LinkedHashSet的区别:

HashSet做任何事情在三者之间速度最快
TreeSet有排序功能
LinkedHashSet会按照添加的对象保存对象

Queue

Queue Massage Looper Handler
在这里插入图片描述

queue:先进先出 堆栈:先进后出
queue是队列的意思,当我们要从数据库拿消息时,先looper进行循环遍历,再将拿到的massage给子线程执行,然后子线程通过handler这个通信机制将msg交给主线程展示在UI。

Array与ArrayList的区别

① Array是java中的数组 ArrayList是集合也是动态数组
②长度:Array的长度是固定的,ArrayList的长度是可变的
③ 数据类型:Array只能存储相同数据类型的数据,ArrayList可以存储不同数据类型的数据

怎样将一个数组转成List

数组转list,使用ArrayList.asList(数组)
在这里插入图片描述
list转数组,使用list.toArray()
在这里插入图片描述

HashMap与HashSet的区别

在这里插入图片描述

HashMap的实现原理(即对它的理解)

HashMap的原理倒是真的没有接触,只记得一个bucket

扩容:16*0.75=12
16是默认初始化容量的大小
扩容并不是说16放满了,放到17的时候才放,而是扩容因子达到容量的75%就要扩容了,扩以前的大小
默认的初始化大小是16,但是这个大小可以改

讲项目的流程

①先讲这个项目是干嘛的 项目的开发背景 比如说这是一款理财产品
②这个项目有哪些模块 让面试官知道这个项目有多大
③重点说自己负责的模块
④这个项目给你带来的感受是什么 比如以前我不会什么什么,现在怎么样了
⑤这个项目你所踩过的坑 遇到过什么问题,你的解决方案

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/878417
推荐阅读
相关标签
  

闽ICP备14008679号