首页 > 编程语言 > Java基础之包装类
2021
06-23

Java基础之包装类

一、java的包装类

  • 什么是包装类

对于基本数据类型来讲,其实就是一个数字,但是当给基本数据类型添加一些属性 方法和构造器,将基本数据类型对应进行一个封装,就产生了一个新的类,这个类被称为是包装类。

那么基本数据类型在前面中讲过有byte short int long float double char boolean,也就是将这些进行封装,基本数据类型和包装类的对应关系是怎样的呢?

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

二、Integer包装类

2.1 Integer类的基本介绍

Integer包装类,是通过int基本数据类型进行封装得到的,可以通过查看java的API说明文档得到它的基本信息:

在这里插入图片描述

Integer包装类在java.lang中,这将意味着可以直接使用,不需要进行导包

在这里插入图片描述

Integer类被final修饰符修饰,那么这个类不可以有子类,不能被继承。

2.2 Integer类的属性

在这里插入图片描述

package cn.zhz.Instance;

public class Test02 {
    public static void main(String[] args) {
        //属性
        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.MIN_VALUE);
        //物极必反:超出了Int类型的范围
        System.out.println(Integer.MAX_VALUE + 1);
        System.out.println(Integer.MIN_VALUE - 1);
    }
}

2.3 Integer类的构造器

在这里插入图片描述

package cn.zhz.Instance;

public class Test03 {
    public static void main(String[] args) {
        Integer i1 = new Integer(13);
        System.out.println(i1.toString());
        Integer i2 = new Integer("12");
        System.out.println(i2);
    }
}

三、自动装箱和自动拆箱

package cn.zhz.Instance;

public class Test04 {
    public static void main(String[] args) {
        //自动装箱:int-->Integer
        Integer i = 12;
        System.out.println(i);
        //自动拆箱:Integer-->int
        Integer i2 = new Integer(123);
        int num = i2;
        System.out.println(num);
    }
}

四、Integer包装类的方法

类型 方法 方法的说明 返回值
int compareTo() 比较两个整数对象的数值。 只返回三个值,要么是0 -1 1
boolean equals() 将此对象与指定对象进行比较。 返回true或者是false
int intValue() 以整数形式返回此整数的值。
static int parseInt() 将输入的String类型的数据转换成int类型的数据
String toString() 返回表示此整数值的字符串对象。
package cn.zhz.Instance;

public class Test05 {
    public static void main(String[] args) {
        //compareTo():只返回三个值,要么是0 -1 1
        Integer i1 = new Integer(6);
        Integer i2 = new Integer(12);
        System.out.println(i1.compareTo(i2));//return (x < y) ? -1 ((x == y) ? 0 : 1)
        //equals():Integer是对object中的equals方法进行了重写,比较的是底层封装的那个value的值
        //Integer对象是通过new关键字来创建对象
        Integer i3 = new Integer(12);
        Integer i4 = new Integer(12);
        System.out.println(i3 == i4);//false 因为==比较的是两个对象的地址
        boolean flag = i3.equals(i4);
        System.out.println(flag);
        //Integer对象是通过自动装箱来完成的
        Integer i5 = 12;
        Integer i6 = 12;
        System.out.println(i5.equals(i6));//true
        System.out.println(i5 == i6);
        /*
         * 如果自动装箱在-128~127之间,那么比较的就是具体的数值,否则,比较的就是对象的地址
         * */
        //intvalue():
        Integer i7 = 130;
        int i = i7.intValue();
        System.out.println(i);
        //parseInt(String s):String -->int
        int i8 = Integer.parseInt("12");
        System.out.println(i8);
        //toString():
        Integer i10 = 130;
        System.out.println(i10.toString());
    }
}

到此这篇关于Java基础之包装类的文章就介绍到这了,更多相关java包装类内容请搜索自学编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持自学编程网!

编程技巧