Java高级高频面试题及详细答案(实战口语版)
一、Java基础进阶(高级高频)
1.说一说==和equals的区别?Integer缓存机制了解吗?
详细答案:
首先,==是比较运算符,对于基本数据类型,比较的是数值本身;对于引用类型,比较的是对象的内存地址。
equals是Object类的方法,默认实现和==一样,也是比较地址。但像String、Integer这些包装类都重写了该方法,重写后是直接比较对象的内容、数值是否相等,不再比较地址。
Integer缓存机制是JDK为了节省内存、减少对象创建做的优化,默认缓存-128到127之间的Integ
原创力文档

文档评论(0)