0
点赞
收藏
分享

微信扫一扫

基本类型包装类


基本类型和包装类的对应
    byte                 Byte
    short                Short
    int                     Integer
    long                  Long
    float                  Float
    double              Double
    char                  Character
    boolean            Boolean

1.integer类说明

Integer 类在对象中包装了一个基本类型 int 的值。Integer 类型的对象包含一个 int 类型的字段。

此外,该类提供了多个方法,能在 int 类型和 String 类型之间互相转换,还提供了处理 int 类型时非常有用的其他一些常量和方法。

构造方法

Integer(int value)   构造一个新分配的 Integer 对象,它表示指定的 int 值。

Integer(String 构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。

2.String和int类型的相互转换    

A:int -- String

    a:和""进行拼接
    b:public static String valueOf(int i)
    c:int -- Integer -- String
    d:public static String toString(int i)

int num=100; String str=num+"";
String.valueOf(num);
String s = new Integer(num).toString();
System.out.println(s);

B:String -- int

      a:String -- Integer -- intValue();
      b:public static int parseInt(String s)

String str2="50";
//方式1
Integer integer = new Integer(str2);
int i = integer.intValue();//将包装类型,转换成他所对应的基本类型
System.out.println(i+1);

//方式2
int i1 = Integer.parseInt(str2);
System.out.println(i1);

3.自动装箱与拆箱

     自动拆箱:将包装类型自动转换成他所对应的基本类型

     自动装箱:将基本类型自动转换成他所对应的包装类型

Integer integer = new Integer(1000); int i = integer.intValue(); //手动拆箱 Integer integer1 = Integer.valueOf(100);//手动装箱 Integer integer2 = Integer.valueOf("10000"); 

面试习题: 

Integer i1 = new Integer(127);
        Integer i2 = new Integer(127);
        System.out.println(i1 == i2);//false
        //Integer重写了父类的equals方法,比较的是值是否相等
        System.out.println(i1.equals(i2));//true
        System.out.println("-----------");

        Integer i3 = new Integer(128);
        Integer i4 = new Integer(128);
        System.out.println(i3 == i4);//false
        System.out.println(i3.equals(i4));//true
        System.out.println("-----------");
        //这个值,超过了一个字节的范围,回去重新new一个Integer对象
        Integer i5 = 128;
        Integer i6 = 128;
        System.out.println(i5 == i6);//false
        System.out.println(i5.equals(i6));//true
        System.out.println("-----------");

        // Integer integer = Integer.valueOf(127);
        //没有超过一个字节 会从缓存里面取出一个对象
        Integer i7 = 127;
        Integer i8 = 127;
        System.out.println(i7 == i8);//true
        System.out.println(i7.equals(i8));//true

 

举报

相关推荐

0 条评论