首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
jdk
订阅
冷叶
更多收藏集
微信扫码分享
微信
新浪微博
QQ
7篇文章 · 0订阅
ArrayList的扩容机制
ArrayList有多个不同的构造函数,不同的构造函数的初始容量是不同的。快速看一下ArrayList源码里关于元素存放的几个私有属性: ArrayList有三个构造方法,不同的构造方法的容量是不一样的,具体可以查看JDK 源码。 如果传入初始容量,会判断这个传入的值,如果大于…
一次ThreadLocal源码解析之旅
本篇文章旨在将ThreadLocal的原理说清楚,讲明白。全文主要完成了以下四个部分的工作: local在主线程set的值,可以在主线程调用get方法得到,但在线程t内调用get方法,结果结果为null。 本文接下来以local调用的set方法为入口,探究产生这一结果的原因。 …
我终于搞清楚了和String有关的那点事儿。
String,是Java中除了基本数据类型以外,最为重要的一个类型了。很多人会认为他比较简单。但是和String有关的面试题有很多,下面我随便找两道面试题,看看你能不能都答对: Q1:String s = new String("hollis");定义了几个对象。 上面这两个是…
Java 集合之LinkedList
add 方法直接调用了 linkLast 方法,而 linkLast 方法是不对外开放的。该方法做了三件事情,新增一个节点,改变其前后引用,将 size 和 modCount 自增 1。其中 modCount 是记录对集合操作的次数。 检查下标是否越界,然后调用 unlink …
Lambda初次使用很慢?从JIT到类加载再到实现原理
基本上每次都是前几次速度较慢,后面的速度更快,因此 可能 有这个因素影响,但差距并不会很大,因此该结论并不能作为问题的答案。 从上述的概念中,我们应该可以得到一个结论:第一条所谓的操作系统预热 大概率不正确,因为普通遍历方法执行N次,后续执行的时间占用比较小,很可能是因为JIT…
并发与多线程基础
这是一个面试常问的基础问题,你应该肯定的回答线程只有五种状态,分别是:新建状态、就绪状态、执行状态、阻塞状态、终止状态。 由于Scheduler(调度器)的时间片分配算法,每个Running的线程会执行多长时间是未知的,因此线程能够在Runnable和Running之间来回转换…