- 2
- 0
- 约5.9千字
- 约 9页
- 2026-06-18 发布于河北
- 举报
开发工程师面试试题及详细答案(实战无模板版)
一、Java基础核心题(高频必考)
1、==和equals的区别是什么?日常开发怎么用?
参考答案:
首先分两种情况,基本类型和引用类型。
基本数据类型:==比较的是数值本身,没有equals方法,直接用==判断相等即可。
引用数据类型:==比较的是内存地址,也就是判断是不是同一个对象;equals是方法,默认也是比较地址,但像String、Integer这些类都重写了equals,重写后是比较对象内容是否相等。
日常开发规范:
1)字符串、包装类比较内容,一律用equals;
2)常量放前面,比如abc.equals(str),避免空指针;
3)判断对象是否为同一个实例,才用==。
2、String、StringBuilder、StringBuffer的区别?业务场景怎么选?
参考答案:
1)String是不可变字符串,每次拼接都会生成新对象,频繁拼接会产生大量垃圾对象,效率很低;
2)StringBuilder可变、线程不安全、效率高;
3)StringBuffer可变、线程安全(方法加了synchronized)、效率偏低。
场景选择:
普通字符串赋值、少量拼接用String;单线程循环拼接、日志组装、参数拼接用StringBuilder;多线程共享场景下的字符串拼接才用StringBuffer,实际项目中St
您可能关注的文档
最近下载
- 2025年地方病防治技能竞赛(理论知识)历年参考题库含答案详解(5套).docx VIP
- 中华古籍文渊阁四库全书 子部609医家 医垒元戎 简体.pdf VIP
- 秦伯未《中医入门》.pdf VIP
- 屋面光伏项目支架及基础计算书.docx VIP
- 单片机原理及应用课程设计报告模板.doc VIP
- 2024年地方病竞赛理论知识考试试题.docx VIP
- 《基于PLC的地铁排水控制系统》-毕业论文(设计).doc VIP
- 2023年西电微电子学院数字集成电路上机作业.pdf VIP
- 高中历史会考知识点.doc VIP
- 2026河北秦皇岛秦热发电有限责任公司春季招聘2人考试参考试题及答案解析.docx VIP
原创力文档

文档评论(0)