JAVA常用类之包装类

JAVA语言包装类把基本数据类型转换为对象。每个JAVA基本类型在java.lang包中都有一个相应的包装类。

基本类型 包装类
boolean Boolean
byte Byte
char Character
short Short
int Integer
long Long
float Float
double Double

包装类的构造方法

每个包装类都有几种重载形式,以Double为例。

Double d1 = new Double(2.0);
Double d1 = new Double("2.0");

除Character之外,其他的包装类都可以以一个字符串为参数构造出他们的实例。
当包装类的构造方法参数为String类型时,字符串不能为空,而且该字符串必须可以解析为相应的基本数据类型。

包装类常用方法

Character类和Boolean类直接继承自Object类,除此之外,其他的包装类都是java.lang.Number的直接子类,因此都继承或覆盖重写了java.lang.Number类中的方法。

Number方法摘要

返回值 方法名 说明
byte byteValue() 以 byte 形式返回指定的数值
abstract double doubleValue() 以 double 形式返回指定的数值
abstract float floatValue() 以 float 形式返回指定的数值
abstract int intValue() 以 int 形式返回指定的数值
abstract long longValue() 以 long 形式返回指定的数值
short shortValue() 以 short 形式返回指定的数值

包装类都覆盖了Object类中的toString()方法,以字符串形式返回被包装的基本数据类型。除了Character类和Boolean类外,包装类都有valueOf(String s)静态工厂方法,可以将指定字符串解析成与之对应的基本类型。同样,字符串不能为空,而且该字符串必须可以解析为相应的基本数据类型。
JDK1.5及以后版本运行基本类型和包装类型进行混合运算。在JDK1.5版本之前,数学运算表达式中操作单元必须是基本数据类型。

自动装箱拆箱

装箱:把基本类型用它们相应的引用类型包装起来,使其具有对象的性质。int包装成Integer、float包装成Float。
拆箱:和装箱相反,将引用类型的对象简化成值类型的数据。
基本数据类型的自动装箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0开始提供的功能。
一般我们要创建一个类的对象实例的时候,我们会这样:
Class a = new Class(parameter);
当我们创建一个Integer对象时,却可以这样:
Integer i = 100; (注意:不是 int i = 100; )
实际上,执行上面那句代码的时候,系统为我们执行了:Integer i = Integer.valueOf(100);
此即基本数据类型的自动装箱功能。

时间: 2024-09-13 20:11:06

JAVA常用类之包装类的相关文章

[Java开发之路](3)Java常用类

1.包装类 大家对基本数据类型都非常熟悉,例如 int.float.double.boolean.char 等.基本数据类型是不具备对象的特性,比如基本类型不能调用方法.功能简单...,为了让基本数据类型也具备对象的特性, Java 为每个基本数据类型都提供了一个包装类,这样我们就可以像操作对象那样来操作基本数据类型.  基本类型和包装类之间的对应关系: 包装类主要提供了两大类方法:     1. 将本类型和其他基本类型进行转换的方法     2. 将字符串和本类型及包装类互相转换的方法 pac

JAVA常用类之格式化

日期格式化 在之前的博客中我们使用到了操作日期的一些类,我们发现,如果我们想要获得指定格式的日期字符串可以做到但是很麻烦,下面为大家介绍几种日期的格式化方式. java.text.DateFormat DateFormat是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间.日期/时间格式化子类(如 SimpleDateFormat)允许进行格式化(也就是日期 -> 文本).解析(文本-> 日期)和标准化.将日期表示为 Date 对象,或者表示为从 GMT(格林尼治标准时

JAVA常用类之StringBuffer

上一篇博客中为大家介绍了String类的使用,这一篇再为大家介绍一个用于处理字符串的类StringBuffer. 在JDK API中对StringBuffer类的描述如下: 线程安全的可变字符序列.一个类似于 String 的字符串缓冲区,但不能修改.虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容. 可将字符串缓冲区安全地用于多个线程.可以在必要时对这些方法进行同步,因此任意特定实例上的所有操作就好像是以串行顺序发生的,该顺序与所涉及的每个线程进行的方

JAVA常用类之String

多个字符排成一串就构成了字符串,字符串在程序设计中使用广泛.在JAVA中定义了String和StringBuffer两个类来处理字符串的各种操作.这两个类位于java.lang包中,默认情况下不需要导入该包. 构造方法 方法名 说明 String() 初始化一个新创建的 String 对象,使其表示一个空字符序列 String(byte[] bytes) 通过使用平台的默认字符集解码指定的 byte 数组,构造一个新的 String String(byte[] bytes, Charset ch

JAVA常用类之日期处理

在应用程序设计中,我们经常会用到日期时间,比如出生日期之类的,JAVA中为我们提供了一些处理日期的类.这一片博客将为大家介绍一下. java.util.Date Date类是我们用的比较多的一个处理时间的类.表示特定的瞬间,精确到毫秒. 在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值.它也允许格式化和解析日期字符串.不过,这些函数的 API 不易于实现国际化.从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转

java常用类的使用方法(辛苦收集)

问题描述 解决方案 解决方案二:顶你!!解决方案三:我比较相信javadoc解决方案四:这还要分呢~~解决方案五:引用3楼zn85600301的回复: 这还要分呢~~ 哈哈一个是高手收藏一个是辛苦收集的

马士兵J2SE-第六章-常用类-基本数据类型包装类、Maths类、File类

基本数据类型包装类 public class test { public static void main(String[] args) { Integer i=new Integer(100); Double d=new Double("123.456"); int j=i.intValue()+d.intValue(); float f=i.floatValue()+d.floatValue(); System.out.println(j); System.out.println(

java 中的常用类

Java 中的包装类 相信各位小伙伴们对基本数据类型都非常熟悉,例如 int.float.double.boolean.char 等. 基本数据类型是不具备对象的特性的,比如基本类型不能调用方法.功能简单..., 为了让基本数据类型也具备对象的特性, Java 为每个基本数据类型都提供了一个包装类,这样我们就可以像操作对象那样来操作基本数据类型. 包装类主要提供了两大类方法: 1. 将本类型和其他基本类型进行转换的方法 2. 将字符串和本类型及包装类互相转换的方法         Integer

计算java常用类型字节大小的工具类

问题描述 /***Name:Sizeof.java*Copyright:zhaozhihua**/packagecom.tywire.tadu.utils;importjava.lang.reflect.Array;importjava.lang.reflect.Field;importjava.lang.reflect.Modifier;importjava.util.Enumeration;importjava.util.HashMap;importjava.util.Hashtable;i