得物暑期Java开发笔试分享

某互联网公司 · Java开发工程师 · 笔试 · 湖南 · 2026-05

《面试题目》

  1. 选择题:Java基础知识占比大,但是问的挺深,其次是MySQL,其他就是计算机网络等

编程题:

(1)数字字符+@+#,模拟计算:

@:a+b 2. # :a-(a&b)优先 3. 输入:1@4#2@3… 4. 输出;依次模拟计算1+【4-(4&2)】+3 5. (2)给定区间长度寻找数组中区间的最大值然后返回区间的中间值的下标(相同最大值区间选择第一个) 10. 3 11. 【5 5 5 10 10 10 5 10 10 10】 12. 返回5(区间【10 10 10】) 13. (3)我没做完,图论题,应该是dfs


《参考解析》

  1. 计算机网络:TCP(传输控制协议)是面向连接、可靠的传输协议,提供流量控制和拥塞控制;UDP(用户数据报协议)是无连接、不可靠但速度更快的协议。TCP通过三次握手建立连接(SYN→SYN+ACK→ACK),四次挥手断开(FIN→ACK→FIN→ACK)。

  2. MySQL深度:MySQL InnoDB使用B+树索引,支持ACID事务。关键知识点:聚簇索引(主键索引)叶节点存完整行数据;辅助索引叶节点存主键值(需回表);MVCC通过undo log版本链+ReadView实现多版本并发控制,解决脏读/不可重复读;事务隔离级别从低到高:读未提交→读已提交→可重复读(默认)→串行化。