
java面试
a372663325
这个作者很懒,什么都没留下…
展开
-
java上机面试题,算法
题目:{“aa”,“ab”,“abc”,“bc”,“bac”,“cab”,“abc”,“123”,“321”,“1”} 数组,找出字符中相同字符为一组,进行分组,比如abc和cab就是一组今天说阿里有面试题就是上面,小G就抛转引玉的写了下,别喷,思路:1、先思考下输出是什么的数据结构2、然后进行比较数组中字符中是否都包相同字符,得出结论就是,把数组中的字符串转化字符进行排序进行比对3、string转化为char,然后排序,这样防止一个个遍历,就出现复杂度O(n^2),如果排序后,在进行比较就是0(原创 2021-07-19 17:18:24 · 838 阅读 · 0 评论 -
Lambada 总结
最近总结下,项目中使用的lambada的案例首先list转化为map使用一个叫collections.toMap的方法里面有三个参数,第一就是转化为map后的key是什么,第二:转化map中value放什么,第三个,就是,merge,就是如果key相同如何处置,在下面程序中(a,b)->a,代表如果相同我就获取进行跳过,如果(a,b)->b,就是进行覆盖,第四个参数说明生产一个什么样子的map,这里是一个linkedHashMap就是有序的public class Test1 {原创 2021-04-19 19:07:27 · 277 阅读 · 0 评论 -
java面试题
****-腾讯****Java▲ 41 HashMap 与 ConcurrentHashMap 的实现原理是怎样的?ConcurrentHashMap 是如何保证线程安全的?▲ 27 volatile 关键字解决了什么问题,它的实现原理是什么?解答:1、可见性,2、原子性 3、防止指令重排▲ 26 Java 中垃圾回收机制中如何判断对象需要回收?常见的 GC 回收算法有哪些?▲ 26 synchronized 关键字底层是如何实现的?它与 Lock 相比优缺点分别是什么?解原创 2021-03-16 10:15:07 · 200 阅读 · 0 评论 -
手动回滚事务
import org.springframework.jdbc.datasource.DataSourceTransactionManager;import org.springframework.transaction.TransactionDefinition;import org.springframework.transaction.TransactionStatus;import org.springframework.transaction.annotation.Transactional原创 2021-03-08 15:31:03 · 331 阅读 · 0 评论 -
zookeeper源码笔记速记,方便面试和会议
第一:各个模块功能:1、服务端looking状态开始为looking,然后进行选举,选举leader,follower,observe 三个角色信息1、选举端口UDP, 每服务bind一定端口,发送vote,进行选举leader: 2、服务器之间的沟通(leader,follower,observer),同步数据信息各个服务器中同步分3个点:diff,snap,trunc 3、客户端进行端口连接sock tcp使用 ,follower,observer连接来源:原创 2020-08-27 15:17:01 · 153 阅读 · 0 评论 -
面试题和解答
集合集合分为两大块:java.util包下的非线程安全集合和java.util.concurrent下的线程安全集合。List1、ArrayList与LinkedList的实现和区别解: linkedList是链表,arrayList是集合,从数据结构看:linkedList,适合多插入,少读取,因为它读取的复杂度o(n),插入的o(1)arrayList 是一个集合,读取比较快,但是插入的时候就不相对比linked慢,支持高效随机访问更新查找插入删除数组0(原创 2020-08-12 17:09:27 · 434 阅读 · 0 评论 -
面试题Queue源码解析详情说明
1. ArrayBlockingQueueQueue queue =new ArrayBlockingQueue(1);ArrayBlockingQueueQueue queue =new ArrayBlockingQueue(1); //构造器 public ArrayBlockingQueue(int capacity, boolean fair) { //判断容量的大小 if (capacity <= 0) throw new Illeg原创 2020-07-31 18:14:24 · 237 阅读 · 0 评论 -
zookeeper 源码解析专题一 (选举算法解析)
看Zookeer源码,看完后,记录下心得,不过感觉不好文章表达,如果后续点赞人多,我就录个频给大家,如果不好拿就算了,哈哈zookeep 有的选举重点有个两个部分:quorumPeer.start() 中 startLeaderElection()和super.start()两个方法quorumPeer.start() 代码往下看: @Override public synchronized void start() { loadDataBase();原创 2020-07-22 17:41:20 · 204 阅读 · 0 评论 -
java代码加载的顺序
今天小G,写下java class加载顺序图原创 2020-04-01 14:43:19 · 150 阅读 · 0 评论 -
StringBuffer和StringBuilder是否线程安全
今天小G看有一个面试题在问,StringBuffer和StringBuilder是否线程安全,所以在此写一个博客说明下,二话不说,上代码程序员必备(小G:答案是stringBuffer是线程安全)StringBuffer buffer= new StringBuffer(); buffer.append("d");然后我们进入appen里面看看@Override public...原创 2019-08-30 10:15:17 · 23313 阅读 · 8 评论