「JAVA包装类装箱」Java中的包装类

博主:adminadmin 2023-01-26 12:48:05 347

今天给各位分享JAVA包装类装箱的知识,其中也会对Java中的包装类进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java 包装类 自动装箱问题

Java包装类,Wrapper~由于在java中,数据类型总共可分为两大种,基本数据类型(值类型)和类类型(引用数据类型)。基本类型的数据不是对象,所以对于要将数据类型作为对象来使用的情况,java提供了相对应的包装类。对于8种数据类型的包装类分别是:

int---Integer

char---Character

float---Float

double---Double

byte---Byte

short---Short

long---Long

boolean--Boolean

所谓装箱,就是把基本类型用它们相对应的引用类型包起来,使它们可以具有对象的特质,如我们可以把int型包装成Integer类的对象,或者把double包装成Double,等等。

所谓拆箱,就是跟装箱的方向相反,将Integer及Double这样的引用类型的对象重新简化为值类型的数据

J2SE5.0后提供了自动装箱与拆箱的功能,此功能事实上是编译器来帮您的忙,编译器在编译时期依您所编写的方法,决定是否进行装箱或拆箱动作。

自动装箱的过程:每当需要一种类型的对象时,这种基本类型就自动地封装到与它相同类型的包装中。

自动拆箱的过程:每当需要一个值时,被装箱对象中的值就被自动地提取出来,没必要再去调用intValue()和doubleValue()方法。

自动装箱,只需将该值赋给一个类型包装器引用,java会自动创建一个对象。例如:

Integer i=100; //没有通过使用new来显示建立,java自动完成。

自动拆箱,只需将该对象值赋给一个基本类型即可。

例如:

int j=i;

int i = 10;

Integer j =new Integer(i); //手动装箱操作

int k = j.intValue(); //手动拆箱操作

int i = 11;

Integer j = i; //自动装箱

int k = j //自动拆箱

java包装类怎样理解?装箱与拆箱又怎样理解?请通俗的解释一下,举个例子也行

Java有一个类型系统有两个部分组成,包含基本类型(byte、char、int、short、long、float、double、boolean)和引用类型。而基本类型则对应着各自的引用类型,称为装箱的基本类型。而引用类型对应着各自的基本类型,称为拆箱的基本类型。对应的类型为:(Byte、Character、Integer、Short、Long、Float、Double、Boolean)

下面一具体例子来说明装箱与拆箱

//java 1.5之前创建一个Integer对象Integer i = new Integer(10);//java 1.5之后有了装箱的特性,直接用下列方式生成一个Integer对象//在这个过程中会将int 类型的10自动装箱成为Integer类型Integer i = 10;//拆箱 输出的值为20,这个过程中,会先将Integer类型的j自动拆箱为基本类型的10,最后完成运算Integer j = new Integer(10);int k = 10;

System.out.print(j+k);

java包装类

在Java中我们经常会见到一些基本的数据类型,比如整数类型(int),小数类型(double,float)等,但是Java是一门面向对象的语言,很多的类型都是以对象的形式展现,像这些数据类型也可以有自己的对象;每个类型的对应包装类型为:int- Integer double-Double float-Float char-Character short-Short boolean-Boolean byte-Byte;

我们用包装类将这些类型封装好之后,就可以使用对象的一些属性和方法,可以方便的操作这些对象;

在这些包装类中,我们可以将这些包装类对象和基本数据类型进行转换,也叫做装箱操作和拆箱操作:装箱操作就是将基本数据类型转换为包装类型,例如将基本数据类型int转换成包装类Integer,装箱操作有两种方式,手动装箱与自动装箱,自动装箱就是直接将基本数据类型赋值给包装类型对象即可;手动装箱就是创建一个包装类对象,然后将值赋值给该对象;

int value1 = 10;

Integer value2 = value1; // 自动装箱

Integer value3 = new Integer( value1 ); // 手动装箱

有了装箱操作也就有拆箱操作,拆箱操作的意思就是将包装类型转换为基本数据类型;拆箱操作也有两种方式:手动拆箱与自动拆箱;

int value4 = value2; // 自动拆箱,直接将包装类对象赋值给基本数据类型变量

Int value5 = value2.intValue(); // 手动拆箱,调用包装类的intValue()方法,获取变量值;

包装类也是一个普通的类,当然也有类的基本属性,方法;数值类型的包装类继承的父类是Number类,这个类里面有一些基本的方法,比如获取intValue的值,longValue的值等等;

包装类继承Number之后,也会有一些自己的属性方法,比如Integer类有自己的一些属性,可以将整数转换为字符串,也可以将字符串转换成整数等操作;

Integer常用方法

比较两个数的大小,如果第一个数小于第二个数返回-1;如果两个数相等返回0;如果第一个数大于第二个数返回1;

public static int compare(int x, int y)

将数值字符串转换为数字,如果传入的参数中包含非数字的字符,则会报出异常

public static int parseInt(String s)

将整数类型转换为字符串类型

public String toString()

valueOf返回Integer类型的数据,根据参数返回不同的结果

public static Integer valueOf(String s, int radix)

public static Integer valueOf(String s)

public static Integer valueOf(int i)

除了Integer之外,其他的包装类例如Long, Double也都有类似的功能

包装类型除了基本数值类型的包装类之外,还有boolean, char的包装类,这两个类都是普通的封装,并没有继承Number类;

使用包装类的使用,进行两个对象的判断,需要使用equals方法进行判断,不可以使用==,当Integer值的范围在-128到127(包含)之间的时候,使用==返回true,但是不在这个返回的时候,返回false;

关于JAVA包装类装箱和Java中的包装类的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。