Java常用类-包装类(Wrapper)简单介绍

目录

  • 前言
  • 1、包装类(Wrapper)


前言

本文主要介绍java中的包装类

1、包装类(Wrapper)

Java是面向对象的编程语言,但它也包含了8种基本数据类型,这8种基本数据类型不支持面向对象的编程机制,基本数据类型的数据也不具备“对象”的特性:没有成员变量、方法可以被调用。

  • 针对八种基本数据类型定义相应的引用类型—包装类(封装类);
  • 有了类的特点,就可以调用类中的方法,Java才是真正的面向对象。
    在这里插入图片描述

自动装箱与自动拆箱:
装箱:基本数据类型包装成包装类的实例

  • 通过包装类的构造器实现:
int i = 500;	
Integer t = new Integer(i);
  • 还可以通过字符串参数构造包装类对象:
Float f = new Float(4.56);
Long l = new Long(“asdf”);	//NumberFormatException

拆箱:获得包装类对象中包装的基本类型变量

  • 调用包装类的.xxxValue()方法:
boolean b = bObj.booleanValue();

JDK1.5之后,支持自动装箱,自动拆箱。但类型必须匹配。

字符串转与基本数据类型的相互转换:

  • 字符串转换成基本数据类型:
    • 通过包装类的构造器实现:int i = new Integer(“12”);
    • 通过包装类的parseXxx(String s)静态方法: Float f = Float.parseFloat(“12.1”);
  • 基本数据类型转换成字符串:
    • 调用字符串重载的valueOf()方法:String fstr = String.valueOf(2.34f);
    • 更直接的方式:String intStr = 5 + “”;
      在这里插入图片描述
@Test
public void wapperTest() {//类型自动提升Object o1 = true ? new Integer(1) : new Double(2.0);System.out.println(o1);//1.0Object o2;if (true)o2 = new Integer(1);elseo2 = new Double(2.0);System.out.println(o2);//1Integer i = new Integer(1);Integer j = new Integer(1);System.out.println(i == j);// false/** 系统把一个-128~127之间的整数自动装箱成Integer实例,* 并放入了一个名为cache的数组中缓存起来。* 如果以后把一个-128~127之间的整数自动装箱成一个Integer实例时,* 实际上是直接指向对应的数组元素,* 因此-128~127之间的同一个整数自动装箱成Integer实例时,* 永远都是引用cache数组的同一个数组元素,所以它们全部相等;* 但每次把一个不在-128~127范围内的整数自动装箱成Integer实例时,* 系统总是重新创建一个Integer实例,所以出现程序中的运行结果。*/Integer m = 1;Integer n = 1;System.out.println(m == n);// true 相当于new了一个Integer对象Integer x = 128;Integer y = 128;System.out.println(x == y);// false 相当于new了一个Integer对象
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部