题记:前几天面试Java基础给来了个面试题Integer a=100,b=100;System.out.println(a==b); 当时回答是true,后来面试官又来了一个Integer a=200,b=200;System.out.println(a==b); 这个回答的也是true当时面试官 ...
package integerdemo public class IntegerDemo public static void main String args 之间 Integer i Integer i if i i System.out.println i i else System.out.println i i 大于 Integer i Integer i if i i System. ...
2016-07-07 15:17 0 2725 推荐指数:
题记:前几天面试Java基础给来了个面试题Integer a=100,b=100;System.out.println(a==b); 当时回答是true,后来面试官又来了一个Integer a=200,b=200;System.out.println(a==b); 这个回答的也是true当时面试官 ...
当某个Integer字段的值是空时,不能用feilds==1等来判断值是否等于1,会报空指针 此时可以将feilds字段转成字符串比较,注意不能用toString(),要用String.valueOf(),原因如下 即可 ...
比较Integer的时候,不要用==。 查看Integer的源码,如下: 通过注释可以知道,为了更好的空间和时间性能,Integer会缓存频繁使用的数值,数值范围为-128到127,在此范围内直接返回缓存值。 IntegerCache.low 是-128,IntegerCache.high ...
第5和第6行的结果都为true。因为Integer与int比较时,Ingeger都会自动拆箱(jdk1.5以上)。 第12行结果为true,第13行结果为false。因为Java在编译的时候,Integer i4=127被翻译成-> Integer i4 ...
一般我们使用数值时,都是使用基本类型,如int、long等,但如果你喜欢使用Integer、Long的包装类,那有一点可就得注意了。先来看下这段代码: 执行结果是(jre版本:1.7.0_10): It's CONST_AIt's CONST_BInvalid ...
最近在项目中遇到一个问题,两个值相同的Integer型值进行==比较时,发现Integer其中的一些奥秘,顺便也复习一下==和equals的区别,先通过Damo代码解释如下: [java] view plain copy ...
先看一个例子: public static void main(String[] args) { int i1 = 128; Integer i2 = 128; Integer i3 = new Integer(128); System.out.println(i1 == i2 ...