- 1
- 0
- 约6.27千字
- 约 9页
- 2026-11-07 发布于河北
- 举报
赞同科技Java面试题及详细答案(实战完整版)
一、Java基础核心面试题
1、==和equals的区别是什么?
详细答案:
首先两者的比对逻辑完全不一样,核心区别分基本类型和引用类型两种场景:
1、==是运算符:基本数据类型比较的是数值本身;引用类型比较的是内存地址,也就是判断两个对象是不是同一个对象。
2、equals是Object类的方法:默认底层就是==,比较对象内存地址。但像String、Integer这些常用类,都重写了equals方法,重写后比较的是对象内容/属性值,不再比较地址。
实战场景:日常开发中,字符串比对一律用equals,基本类型判断用==,避免地址比对导致的业务bug。
2、String、StringBuilder、StringBuffer的区别?
详细答案:
1、String:字符串常量,底层是final修饰的字符数组,不可变。每次拼接、修改字符串都会生成新的String对象,频繁操作会产生大量无用对象,占用内存、降低效率。
2、StringBuilder:字符串变量,线程不安全,底层可变数组,无锁操作,拼接效率最高,单线程环境优先使用。
3、StringBuffer:字符串变量,线程安全,所有方法都加了synchronized锁,多线程并发操作字符串时保证数据一致性,但加锁会带来性能损耗,效率低于StringBuilder。
实战总结
您可能关注的文档
最近下载
- 《电商新媒体运营》全套教学课件.pptx
- 2024广东惠州市面向优秀村(社区)党组织书记招聘乡镇(街道)事业编制人员14人笔试备考题库及答案解析.docx VIP
- 吉林省建设工程造价咨询收费市场参考价格通知.pdf VIP
- 鹤煤三矿关于2023年度反风演习的报告(上报版)(1).doc VIP
- 产品数据管理(PDM)系统电子文件归档与电子档案管理规范.pdf VIP
- 夜市小吃街规划方案ppt.docx VIP
- 2024广东惠州市面向优秀村(社区)党组织书记招聘乡镇(街道)事业编制人员14人笔试备考题库及答案解析(1).docx VIP
- 8000张分类高清精美壁纸(2.5G).doc VIP
- MES标准趋势和VDI 5600指导方针.pdf VIP
- 2015年度矿井反风演习报告2015年度矿井反风演习报告.doc VIP
原创力文档

文档评论(0)