Java基础之包装类

网友投稿 217 2022-10-25


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中,这将意味着可以直接使用,不需要进行导包

Inthttp://eger类被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.Ihttp://nstance;

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());

}

}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:redis持久化之AOF
下一篇:redis持久化之RDB
相关文章

 发表评论

评论列表