面试题
面试题
立志成为大佬
这个作者很懒,什么都没留下…
展开
-
面试题:List集合的并发修改异常
list的循环陷阱原创 2022-06-26 10:53:12 · 622 阅读 · 1 评论 -
面试题:ReentrantLock原理
ReentrantLock原理以及、ReentrantLock和Synchronized对比原创 2022-06-25 16:20:22 · 1037 阅读 · 0 评论 -
面试题:interrupt()、interrupted()和isInterrupted()
interrupt()、interrupted()和isInterrupted()原创 2022-06-25 11:14:40 · 139 阅读 · 0 评论 -
synchronized详解
synchronized详解原创 2022-06-12 17:13:02 · 131 阅读 · 0 评论 -
Sleep和Wait的区别
Thread.Sleep(1000) 意思是在未来的1000毫秒内本线程不参与CPU竞争,1000毫秒过去之后,这时候也许另外一个线程正在使用CPU,那么这时候操作系统是不会重新分配CPU的,直到那个线程挂起或结束,即使这个时候恰巧轮到操作系统进行CPU 分配,那么当前线程也不一定就是总优先级最高的那个,CPU还是可能被其他线程抢占去。 wait(1000)表示将锁释放1000毫秒,到时间后如果锁没有被其他线程占用,则再次得到锁,然后wait方法结束,执行后面的代码,...原创 2022-03-25 20:28:16 · 57 阅读 · 0 评论 -
每日面试题:finally不会执行的情况
在一般情况下,finally中的代码一定会执行,当然也有一些特殊情况:1.finally 之前虚拟机被终止运行2.关闭cpu3.所在线程死亡原创 2022-04-26 19:39:07 · 1160 阅读 · 0 评论 -
面试题:交换a,b的值
第一种: 设置一个临时变量,C=bb=a,a=c第二种: 利用加减a=a+bb=a-ba=a-b第三种:利用异或运算a=a^bb=a^ba=a^b原创 2022-05-08 19:59:16 · 128 阅读 · 0 评论 -
每日一个面试题mybatis中的#$
#{} 为参数占位符 ?,即sql 预编译${} 为字符串替换,即 sql 拼接#{} 能防止sql 注入${} 不能防止sql 注入注意:虽然能用#的时候就不用$,但是$能解决某些特定问题。1.表名作参数时,必须用 ${}。如:select * from ${tableName}2.order by 时,必须用 ${}。如:select * from t_user order by ${columnName}3.使用 ${} 时,要注意何时加或不加单引号,即 ${} .原创 2022-04-11 08:09:17 · 1574 阅读 · 0 评论 -
面试题:nextInt和nextLine的区别
两个都是以回车为结束符。nextInt只读取数字nextLine读取回车之前的,为String控制台输入:5回车5回车5回车5回车sout(5+5+““+5+5)第一个为数字5,第二个为数字5,不包含回车,第三个为回车,第四个为string5包含回车,第五个为数字5...原创 2022-05-02 09:14:43 · 348 阅读 · 0 评论 -
面试题:为什么HashMap的容量2的幂
其中有个( n - 1) & hash的方法,那么这个方法是干什么的呢? HashMap为了存取高效,就要尽量减少碰撞,将数据分配均匀,那么如何分配均匀,此时主要靠将数据存入到那个链表中的算法,这个算法就是( n - 1) & hash。& 是按位与运算,是一个位运算,而在计算机中位运算的效率很高,这就是不用%运算的原因。 按位与&的计算方式为当对应位置的数据都为1时,运算结果也为1。因此当HashMap的容量是2的幂次方时,( n - ...原创 2022-04-27 16:54:20 · 463 阅读 · 0 评论