相关知识
- integer类的equal方法
public boolean equals(Object obj)比较此对象与指定对象。当且仅当参数不为 null,并且是一个与该对象包含相同 int 值的 Integer 对象时,结果为 true。
- 自动装箱
自动装箱在byte取之范围之内(-128~127),则不创建对象在常量池中获取,如果超出byte范围则创建对象
package com.ifenx8.study.array; public class Demo_Integer2 { /** * A:Integer的面试题 * 看程序写结果 */ public static void main(String[] args) { Integer i1 = new Integer(97); Integer i2 = new Integer(97); System.out.println(i1 == i2);//结果为false ,创建两个对象有两个地址值 System.out.println(i1.equals(i2));//true (api中的equal方法 )public boolean equals(Object obj)比较此对象与指定对象。当且仅当参数不为 null,并且是一个与该对象包含相同 int 值的 Integer 对象时,结果为 true。 System.out.println("-----------"); Integer i3 = new Integer(197); Integer i4 = new Integer(197); System.out.println(i3 == i4);//false 创建两个对象有两个地址值 System.out.println(i3.equals(i4));//true 同上 System.out.println("-----------"); Integer i5 = 97; Integer i6 = 97; System.out.println(i5 == i6);//true ,自动装箱在byte取之范围之内(-128~127),则不创建对象在常量池中获取,如果超出byte范围则创建对象 System.out.println(i5.equals(i6));//true 同上 System.out.println("-----------"); Integer i7 = 197; Integer i8 = 197; System.out.println(i7 == i8);//false 同上 System.out.println(i7.equals(i8));//ture 同上 } }
评论前必须登录!
注册