首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我们需要包装器类

为什么我们需要包装器类
EN

Stack Overflow用户
提问于 2013-12-20 14:45:22
回答 1查看 90.8K关注 0票数 25

我理解什么是包装器类,它们将原始类型(例如: int、double等)转换为各自类的对象(例如: Integer、Double等)。

但是,为什么我们需要包装器类,为什么我们选择它们各自类的对象。

EN

回答 1

Stack Overflow用户

发布于 2013-12-20 14:51:12

Java是一种面向对象的语言,可以将一切视为对象。简单的文件可以被视为对象,系统的地址可以被视为对象,图像可以被视为对象(使用java.awt.Image),简单的数据类型可以转换为对象(使用包装器类)。本教程讨论包装器类。包装器类用于将任何数据类型转换为对象。

原始数据类型不是对象;它们不属于任何类;它们是在语言本身中定义的。在Java语言中,有时需要将数据类型转换为对象。例如,在JDK1.4之前,数据结构只接受要存储的对象。数据类型要转换为对象,然后添加到Stack或Vector等。为了进行这种转换,设计者引入了包装器类。

什么是包装器类?

顾名思义,包装器类对数据类型进行包装(包围),并为其提供对象外观。在任何需要将数据类型作为对象的地方,都可以使用此对象。包装器类包括解开对象并返回数据类型的方法。它可以比作巧克力。制造商用锡纸或纸把巧克力包起来以防污染。用户拿起巧克力,取出并扔掉包装纸,然后吃掉它。

观察以下转换。

代码语言:javascript
复制
 int k = 100;
    Integer it1 = new Integer(k); 

使用Integer类将int数据类型k转换为对象it1。在需要k作为对象的任何地方,都可以在Java编程中使用it1对象。

下面的代码可以用来解开(从Integer对象取回int )对象it1。

代码语言:javascript
复制
int m = it1.intValue();
System.out.println(m*m); // prints 10000 

intValue()是Integer类的一个方法,它返回一个整型数据类型。

包装器类的重要性

包装器类主要有两种用途。

1)用于将简单数据类型转换为对象,也就是将对象形式转换为数据类型;这里使用的是构造函数。

2)将字符串转换为数据类型(称为解析操作),这里使用parseXXX()类型的方法。

包装器类的特性。

1)包装类将数字字符串转换为数值。

2)在对象中存储原始数据的方式。

3) valueOf()方法在除Character之外的所有包装类中都可用

4)所有的包装类都有typeValue()方法。此方法返回对象的值作为其基元类型。

票数 51
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20697868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档