Java基础之包装类

一、什么是包装类?

java8 API

The Integer class wraps a value of the primitive type int in an object. An object of type Integer contains a single field whose type is int.
In addition, this class provides several methods for converting an int to a String and a String to an int, as well as other constants and methods useful when dealing with an int.

包装类是基本数据类型对应的引用类型。
在这里插入图片描述

二、为什么要学包装类?

现在很多方法都是用多态的方式来接收参数,基本数据类型的参数传不进来,并且集合也只能存储引用类型的数据。
在这里插入图片描述

三、包装类的类型

在这里插入图片描述

四、装箱和拆箱

基本类型与对应的包装类对象之间,来回转换的过程称为“装箱”与“拆箱”。

  • 装箱:从基本数据类型转换为对应的包装类对象
  • 拆箱:从包装类对象转换为对应的基本数据类型

代码演示:

package io.github.wangpeng;

public class WrapperClassDemo {
    public static void main(String[] args) {
        // 1、构造方法创建包装类对象  装箱
        Integer integer1 = new Integer(8);
        // 重写了toString方法
        System.out.println(integer1);

        // 2、静态方法创建包装类对象  装箱
        Integer integer2 = Integer.valueOf(8);
        System.out.println(integer2);

        Integer integer3 = Integer.valueOf("8");
        System.out.println(integer3);

        // 3、拆箱:从包装类中取出基本类型的数据
        int i = integer1.intValue();
        System.out.println(i);

    }
}

五、自动装箱和拆箱

JDK1.5之后新增了新特性,也就是基本类型的数据和包装类之间可以自动的相互转换。

package io.github.wangpeng;

public class WrapperClassDemoAutomatic {
    public static void main(String[] args) {
        // 自动装箱:直接把int类型的数据赋值给包装类
        Integer integer = 1;

        // 自动拆箱:包装类对象无法直接参与运算,可以自动转换为基本数据类型,再参与运算
        integer = integer + 8;

        System.out.println(integer);


    }
}

六、Integer类中的方法

在这里插入图片描述

package io.github.wangpeng;

public class WrapperClassMethod {
    public static void main(String[] args) {
        // public static String toBinaryString(int i)
        // 1.将整数转换为二进制
        String s = Integer.toBinaryString(100);
        System.out.println(s); // 1100100

        // public static String toOctalString(int i)
        // 2.将整数转换为八进制
        String s1 = Integer.toOctalString(100);
        System.out.println(s1); // 144

        // public static String toHexString(int i)
        // 3.将整数转换为十六进制
        String s2 = Integer.toHexString(100);
        System.out.println(s2); // 64

		// public static int parseInt(String s)
        // 4.将字符串类型的整数转换成int类型的整数
        int i = Integer.parseInt("123");
        System.out.println(i + 1); // 124
    }
}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: double类是Java中的一个包装类,用于封装基本数据类型double。它提供了一些方法,可以对double类型的数据进行操作和转换。例如,可以使用double类的parseDouble方法将字符串转换为double类型的数据,也可以使用doubleValue方法将Double对象转换为double类型的数据。此外,double类还提供了一些常量,如MAX_VALUE和MIN_VALUE,分别表示double类型的最大值和最小值。在Java中,double类型的数据通常用于表示浮点数,如小数或科学计数法表示的数值。 ### 回答2: Java的double类是基本数据类型中的一种,它是一个浮点数类型,可以用来表示小数或者整数。在Java中,如果需要使用双精度浮点数,我们可以直接使用double类型,而不需要使用其它类库或者自定义数据类型。 Java的double类提供了很多方法来处理双精度浮点数。比如,我们可以使用doubleValue()方法将一个Double对象转换成double类型的值;使用compareTo()方法比较两个double类型的值的大小;使用isNaN()方法判断一个double类型的值是否为非数值。 同时,Java的double类还提供了一些常量,如MAX_VALUE、MIN_VALUE、POSITIVE_INFINITY、NEGATIVE_INFINITY和NaN。其中,MAX_VALUE表示double类型的最大值,MIN_VALUE表示double类型的最小值,POSITIVE_INFINITY表示正无穷大,NEGATIVE_INFINITY表示负无穷大,NaN表示非数值。 除了基本的方法和常量,Java的double类还可以拆箱和装箱。拆箱指将Double类型的值转换成double类型的值,而装箱则是将double类型的值封装成一个Double对象。 在实际开发中,我们常常使用double类型来表示货币、收入、体重、距离等数值。使用double类型可以方便地进行数值计算,并且Java的标准库中提供了许多API来对double类型的值进行操作和处理,这大大提高了开发效率。使用double类型时需要注意其精度问题,因为在进行除法等计算时,可能会出现精度丢失的情况。此时,我们可以使用BigDecimal类来解决这个问题。 综上所述,Java的double类是一个非常重要的基本数据类型,我们在日常开发中经常使用,需要熟练掌握其使用方法和注意事项。 ### 回答3: 练习Java包装类之Double类是学习Java语言基础的必备内容,Double类是Java中常用的包装类之一,它用于将基本数据类型double封装成一个对象。Double类提供了很多有用的方法,能够方便地进行数字转换、计算和比较等操作。 Double类中最常用的方法是parseDouble(),它可以将一个字符串转换为double类型的数据。例如,可以使用Double.parseDouble("3.14")来获得一个double类型的值3.14。同时,Double还提供了很多其他的方法,如doubleValue()方法用于将Double对象转换为double类型,intValue()方法用于将Double对象转换为int类型,toString()方法用于将Double对象转换为字符串类型等。 此外,在使用Double类时还需要注意几个重要的特性。一是Double类是不可变的,即一旦创建了一个Double对象,它的值就不能再改变了。这意味着如果需要在程序中对double类型的数据进行频繁的修改,就应该使用基本数据类型double,而不是Double对象。 二是由于Double类是对象,所以在比较两个Double对象时,应该使用equals()方法而不是==操作符。因为==操作符只比较两个对象的内存地址,而不是它们的值,而equals()方法则比较两个对象的值是否相等。 最后,需要了解的是Double类中一些重要的常量。例如,Double.MAX_VALUE表示可表示的最大双精度浮点数,Double.MIN_VALUE表示可表示的最小双精度浮点数,NaN表示非数字(Not a Number),Infinity表示正无穷或负无穷。 练习Java包装类之Double类能够帮助我们更好地理解Java语言的基础知识和语法规则,同时提高我们对数字的处理能力和代码编写的效率。建议在学习Java语言时,重点掌握和实践常用的包装类,以更好地应用Java语言进行开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数产第一混子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值