java包装器类型(代码片段)

zhangqingquan zhangqingquan     2022-12-07     647

关键词:

一、为什么要使用包装器类型

  java是面向对象的语言,但基本类型并不是面向对象的,从而出现了包装器类型,并且包装器添加了更多的属性和方法。如我们在使用集合类型Collection的时候就一定要使用包装类型而非基本类型,它相当于将基本类型"包装起来",使它具有了对象的性质,丰富了基本类型的操作。

  java 的两大数据类型

  ● 基本类型(或者叫做内置类型)
  ● 引用数据类型

  基本类型:不存在"引用"的概念,基本类型都是直接存储在内存的内存栈上面,数据本身的值就存储在栈空间里面

  而Java语言里面只有这八种数据类型是这种存储模型;
  引用数据类型:“引用”是存储在有序的内存栈上的,而对象本身的值存储在内存堆上的。

二、什么装箱和拆箱

  装箱:自动将基本数据类型转换为包装器类型。

  拆箱:自动将包装器类型转换为基本数据类型。

 三、装箱和拆箱是如何实现的?

  装箱过程是通过调用包装器的valueOf方法实现的,而拆箱过程是通过调用包装器的 xxxValue方法实现的。(xxx代表对应的基本数据类型)。

  示例1:

  
Double i1 = 100.0;
Double i2 = 100.0;
Double i3 = 200.0;
Double i4 = 200.0;

System.out.println(i1==i2);
System.out.println(i3==i4);

  输出结果:

    false

    false

  为什么都返回false呢,我们看下Double.valueOf()方法,就知晓了:

private final double value;

public Double(double value) 
   this.value = value;


public static Double valueOf(double d) 
   return new Double(d);

示例2:

Boolean i1 = false;
Boolean i2 = false;
Boolean i3 = true;
Boolean i4 = true;

System.out.println(i1==i2);
System.out.println(i3==i4);

输出结果

    true

    true

为什么都返回true呢,我们看下Boolean.valueOf()方法,就知晓了:

public static final Boolean TRUE = new Boolean(true);
public static final Boolean FALSE = new Boolean(false);

public static Boolean valueOf(boolean b) 
   return (b ? TRUE : FALSE);

 

c++11———包装器(代码片段)

文章目录包装器function包装器function包装器介绍function包装器统一类型function包装器简化代码function包装器的意义bind包装器bind包装器介绍bind包装器绑定固定参数bind包装器调整传参顺序bind包装器的意义包装器function包装器function包... 查看详情

c++11———包装器(代码片段)

文章目录包装器function包装器function包装器介绍function包装器统一类型function包装器简化代码function包装器的意义bind包装器bind包装器介绍bind包装器绑定固定参数bind包装器调整传参顺序bind包装器的意义包装器function包装器function包... 查看详情

装箱与拆箱(代码片段)

...拆箱描述语言描述,装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型。代码描述就是:Integerinteger=100;//自动装箱inti=integer;//自动拆箱基本技术类型对应的包装器类型表:数据类型... 查看详情

java自动装箱和拆箱(待整理)(代码片段)

含义装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型。Integeri=10;//装箱intn=i;//拆箱publicclassMainpublicstaticvoidmain(String[]args)Integeri=10;intn=i;从反编译得到的字节码内容... 查看详情

java数据类型包装器

...供了八个类来表示八种基本类型中的每一种。这些类称为包装类,因为它们在对象中包装原始值。下表列出了原始类型及其相应的包装类。基本类型包装类byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBoolean方法所... 查看详情

java包装类(代码片段)

一.什么是包装类    Java中的基本数据类型没有方法和属性,而包装类就是为了让这些拥有方法和属性,实现对象化交互。 数值型包装类都继承至Number,而字符型和布尔型继承至Object。二.基本数据和包装类之间的转换 ... 查看详情

java进阶包装类(代码片段)

文章目录1包装类与基本数据类2包装类的常用方法3基本数据类型和包装类之间的转换4基本数据类型与字符串之间的转换5默认值6对象常量池1包装类与基本数据类基本类型对应的包装类byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublec... 查看详情

java.myml|单个类文件包装器,用于改进(类似yaml)语法(代码片段)

查看详情

包装类(代码片段)

...的基本类型像对象一样操作,就可以使用基本类型对应的包装类。如下装箱与拆箱基本类型与对应的包装类对象之间,来回转换的过程称为”装箱“与”拆箱“:由于我们经常要做基本类型与包装类之间的转换,从Ja... 查看详情

java千百问_06数据结构(003)_什么是基本类型包装器

点击进入_更多_Java千百问1、什么是包装器包装器也叫包装类,继承于Object,可以当作8种基本数据类型的类映射,包装器可以直接转换为基本数据类型(成为拆箱)。如下:了解8种基本数据类型看这里:java有哪8种基本数据类型2... 查看详情

包装类(代码片段)

?在java中,系统为每一个基本类型都提供了一个对应的包装类型基本类型包装类byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBoolean包装类在java.lang包中为什么提供包装类?为了编程方便包装类对象的创建(构造方法)1.Jav... 查看详情

有了基本数据类型,为什么还需要包装类型(代码片段)

...在java中有八种基本数据类型对应每种基本类型又有八种包装类型:  基本类型:boolean,char,int,byte,short,long,float,double  包装器类型:Boolean,Character,Integer,Byte,Short,Long,Float,Double  从上面我们可以看到除了c... 查看详情

基本类型包装类(代码片段)

基本类型包装类需求问题:在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的。而程序开发中,我们需要把字符串数据,根据需求转换成指定的基本数据类型,如年龄需要转换成int类型,考试成绩需要... 查看详情

java使用espresso进行测试时要使用的改装api包装器(代码片段)

查看详情

java中的包装类(代码片段)

包装类一、什么是包装类在JAVA中,八大基础数据类型(int,float,double...)是不具备对象的特征的,比如基本数据类型就不能调用方法,功能简单,为了让基本数据类型也具备对象的特征,就有了JAVA包装... 查看详情

java入门教程六(内置包装类)(代码片段)

...处理,并能连接相关方法,Java为每个基本类型都提供了包装类,如int型数值的包装类Integer,boolean型数值的包装类Boolean等。这样便可以把这些基本类型转换为对象来处理了。Object类Object是Java类库中的一个 查看详情

期末不挂科のjava(代码片段)

...中的方法Equals方法hashCode()方法toString方法多态包装器类创建包装器类型包装器转换为基本数据类型重载方法调用规则:静态属性静态方法使用规则(类内部)静态代码块异常异常处理机制字符串String类StringB... 查看详情

装箱与拆箱(代码片段)

装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型。packagecom.lv.pm;publicclassTest4publicstaticvoidmain(String[]args)//基本数据类型是不是Object的子类?//装箱拆箱//给8种基本数据类型,做一个... 查看详情