java基础--包装类

包装类产生原因:因为基本数据类型无法进行对象化处理,所以就引入了包装类。

Java中的数据类型:

    1.基本数据类型      

  • 数值型
  1. 整数类型 byte、short、int、long
  2. 浮点类型 float、double
  • 字符型 char
  • 布尔型 boolean

    2.引用数据类型

  • 类 class
  • 接口 interface
  • 数组

包装类:拥有属性、方法,可以对象化交互

包装类与基本数据类型对应

Java中数值型包装类都是继承自number类型,都是用final修饰的,不可以继承

Boolean和character都是继承自Object类

  • 装箱 基本数据类型->包装类
  • 拆箱 包装类->基本数据类型

//自动装箱
int t1=2;
Integer t2=t1;
//手动装箱
Integer t3=new Integer(t1);



//自动拆箱
int t4=t2;
//手动拆箱
int t5=t2.intValue();

基本数据类型和字符串之间的转换

//基本数据转换为字符串
int t1=2;
String t2=Integer.toString(t1);
//字符串转化为基本数据类型
1、包装类的parse
int t3=Integer.parseInt(t2);
2、
int t4=Integer.valueOf(t2);

包装类对象的初始值

  • 基本数据类型的初始值

  • 包装类型的初始值

null

包装类对象间的比较

Integer one=new Integer(100);
Integer two=new Integer(100);
System.out.println(one==two);//false
Integer three=100;
System.out.println(three==100);//true
Integer four=100;
System.out.println(three==four);//true
Integer five=200;
System.out.println(five==200);//true
Integer six=200;
System.out.println(five==six);//true

1、new是开辟两块不同的空间所以one==two false
2、Integer three=10;自动装箱内部执行:Integer.valueof(10)并在内存中开辟一款缓存区,判断three==100时,自动拆箱 值相同 true 
3、Integer four=100时Integer.valueof(10) 在缓存区中找到这个10  所以three==four true
4、true
5、因为200不在-128-127之间 所以不能执行Integer.valueof(10) 把10存到缓存区 只能拿通过构造函数new Integer(200)来重新在内存中构造一块空间 所以five==six false

除了float、double其他数据类型都有对象池(缓冲区)这个概念

Double d1=Double.varleOf(100);
System.out.println(d1==100);//true
Double d2=Double.varleOf(100);
System.out.println(d1==d2);//false

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 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
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值