- 博客(6)
- 收藏
- 关注
原创 多线程学习笔记
Vector和CopyOnWriteArrayList都是线程安全的List,底层都是数组实现的,Vector的每个方法都进行了加锁,而CopyOnWriteArrayList的读操作是不加锁的,因此CopyOnWriteArrayList的读性能远高于Vector,Vector每次扩容的大小都是原来数组大小的2倍,而CopyOnWriteArrayList不需要扩容,通过COW思想就能使数组容量满足要求。两个集合都实现了RandomAccess接口,支持随机读取,因此更加推荐使用for循环进行遍历。
2023-02-03 15:48:05
420
原创 集合类面试
也就是说如果是先Iterator接口,那么在遍历集合中元素的时候,只能往后遍历,被遍历后的元素不会在遍历到,通常无序集合实现的都是这个接口,比如HashSet,HashMap;而那些元素有序的集合,实现的一般都是LinkedIterator接口,实现这个接口的集合可以双向遍历,既可以通过next()访问下一个元素,又可以通过previous()访问前一个元素,比如ArrayList。否则抛出异常,终止遍历。因此,如果一开始就用红黑树结构,元素太少,新增效率又比较慢,无疑这是浪费性能的。
2022-09-21 17:04:48
472
原创 JSONView下载安装
推荐一款Chrome辅助工具JSONView,JSONView是一款非常好用的Json格式查看器。在日常开发调试中经常会遇到Json格式的数据需要解析阅读,但Json格式数据阅读性极差,JSONView可以帮我们解决Json格式的阅读问题,无需安装,运行软件即可轻松使用。...
2022-06-29 14:42:21
12418
4
原创 IDEA的基本配置
IDEA基本配置(setting) 前言 本文章是基于idea2019.2.2的全局setting设置 1、控制台中文乱码 进入idea安装目录下的bin目录,找到文件:idea.exe.vmoptions,idea64.exe.vmoptions 根据系统是32位或64位选择其中一个配置文件,在配置文件中添加:-Dfile.encoding=UTF-8 2、切换背景风格 3、启动手动选择项目,取消自动打开上次的项目 4、关闭自动更新 5、选择eclipse的快捷键 6、设置自动导包 7、忽视
2022-03-19 11:59:02
9071
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人