java Integer 比较
2014-03-25 17:24
148 查看
Integer a1 = 100; Integer a2 = 100; System.out.println(a1 == a2); // true Integer b1 = new Integer(100); Integer b2 = new Integer(100); System.out.println(b1 == b2); // false Integer c1 = 150; Integer c2 = 150; System.out.println(c1 == c2); // false
第二组代码打印 false 是因为 b1 和 b2 指向不同的 Integer 对象引用。
第一组打印了 true 是因为在 -128 和 127 之间的值会自动转换成同样的immutable型的Integer 对象。对于超出那个范围的数,Java会对于每一个数创建一个新的Integer对象。所以第三组为false。
相关文章推荐
- java中Integer与int比较浅谈
- JAVA中Long与Integer比较容易犯的错误(比较数据equals)
- java Integer == 比较的小问题
- Java——Integer和int比较
- java基础之Integer和Long对象相等比较 .
- Java 包装类Integer的值比较
- Java常用类型(Integer,BigDecimal)定义、转换及比较
- Java进阶(三十四)Integer与int的种种比较你知道多少?
- Java中Integer的变量比较源码解析
- java基础Integer与Integer比较
- java Integer和int之间==的比较问题。求解释
- JAVA中Long与Integer比较容易犯的错误
- Java Integer和String的比较操作
- java Integer.ValueOf(int)和new Integer(int)性能比较
- Java进阶(三十四)Integer与int的种种比较你知道多少?
- Java中Integer的变量比较源码解析
- Java之Integer与int类型数据的比较-yellowcong
- java中Integer比较需要注意的问题
- java Integer.ValueOf(int)和new Integer(int)性能比较
- Java的String.valueOf 转换 与、空串+类型变量转换与封装类(Integer)的toString方式转换比较。