Java高级工程师面试题及详细答案(真实面试版)
一、Java核心基础(高级高频)
1.说一说==和equals的区别,以及Integer缓存机制
参考答案:
==是比较运算符,对于基本数据类型,比较的是数值本身;对于引用类型,比较的是对象的内存地址。
equals是Object类的方法,默认实现和==一致,也是比较地址。但String、Integer等包装类重写了该方法,重写后是比较对象的实际内容、数值是否相等。
Integer缓存机制:Integer对-128~127之间的整数做了缓存,这个区间内的数值通过valueOf创建对象时,会直接返回缓存中的对象,不会新建实例。所以这个区间
原创力文档

文档评论(0)