java
羽林中郎将
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
String 是值传递还是引用传递
String是引用类型,只是编译器对其做了特殊处理。 string最为显著的一个特点就是它具有恒定不变性:我们一旦创建了一个string,在managed heap 上为他分配了一块连续的内存空间,我们将不能以任何方式对这个string进行修改使之变长、变短、改变格式。所有对这个string进行各项操作(比如调用ToUpper获得大写格式的string)而返回的string,实际上另一个重新创建的string,其本身并不会产生任何变化。 string 对象称为不可变的(只读),因为一旦创建了该对象,就不能修原创 2020-12-09 10:54:43 · 1419 阅读 · 1 评论 -
HashMap面试题
HashMap hash表底层采用何种算法计算hash值?还有哪些算法可以计算出hash值? 1:底层采用key的hashCode方法的值结合数组长度进行无符号右移(>>>),按位异或(^),按位与(&)计算出索引 还可以采用:平方取中法,取余数,伪随机法, 其他运算效率比较低,位运算效率比较高 2:当两个键的hashCode相同,如何存储键值对? 会产生哈希碰撞,若key值的内容相同则替换旧的value,否则链接到链表后面,链表超度超过8转换为红黑树。 3:何时发生哈希碰撞和什么原创 2020-09-18 14:27:21 · 179 阅读 · 0 评论 -
java线程池
线程池 概念介绍: 1.1什么是线程池 线程池其实就是多线程处理形式,处理过程中可以将任务添加到队列中,然后在创建在创建线程后自动启动这些任务。这里的线程就是我们之前学过的线程,这里的任务就是我们前面学过的实现了Runnable或Callable接口的实例对象 1.2为什么使用线程池 使用线程池最大的原因就是可以根据系统的需求和硬件环境灵活的控制线程的数量,且可以对所有线程进行统一的管理和控制,从而提高系统原创 2020-09-15 20:47:25 · 203 阅读 · 0 评论
分享