From e2f92ad1e2bd5e54e5fb4eeb8a073d819918fd6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BE=AF=E5=9D=A4=E6=9E=97?= Date: Tue, 11 Jun 2019 10:52:44 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=B3=E4=BA=8Ejava=E7=9A=84integer=E5=AF=B9?= =?UTF-8?q?=E8=B1=A1=E5=88=A4=E6=96=AD=E7=9B=B8=E7=AD=89=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- java/Dayv.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/java/Dayv.java b/java/Dayv.java index c6b068e..e6fc29c 100644 --- a/java/Dayv.java +++ b/java/Dayv.java @@ -4,6 +4,10 @@ package com.test.java.enumtest; public class Dayv { //记得刚工作的时候踩过这样一个坑 当时debug发现相等数值情况下有时返回true 有时返回false + // 这个问题有在网上看过,关于Integer对象的值,在127以内时,值会缓存起来,值相同时会返回同一个引用,因此==判断两个对象的引用相等结果返回true,但是超过127之后就没有缓存,因此每次new都是一个新的引用,因此就返回false + // 具体可百度/谷歌搜索“java integer 127 缓存” + // 参考:https://www.cnblogs.com/xiehongwei/p/7595520.html + // 参考:https://www.jianshu.com/p/ba0bc8ea3d3a public boolean isEqual(Integer a,Integer b){ return a==b; } -- Gitee