包装类有什么用?我无法理解本主题中的包装内容。它包装了原始数据类型,但它包含了什么以及如何包装?当他们告诉包装它真正意味着什么?
答案 0 :(得分:5)
如您所知,在Java中,并非所有东西都是对象。有原始类型,如int,double float等。所以如果你想使用原始类型代替Object,即如果一个方法需要一个Object,但你需要发送一个原始类型,没有Wrapper类,这将不会是可能。以Map接口为例。 put(Object,Object)
方法将对象作为键和值。例如,如果您想要在整数值1(int i=1
)与Object之间存储映射,而没有包装类,那么这是不可能的。当需要对象时,包装类用于表示原始值。
答案 1 :(得分:3)
包装类的一般概念是一个类,由于缺少更好的术语,“盒子”是另一个类或其他一些功能。这可以用来抽象包装的项目,并向用户公开一个更简单的界面。
我认为您的具体问题涉及Java Primitive Wrapper Classes,它们是代表基本类型的类(int
,double
,boolean
,byte
和所以)作为班级。其中一个原因是它们用于需要Object
类型并且您想要使用原语时,例如在java.Collections
中使用任何类时。
答案 2 :(得分:0)
根据维基百科对我的问题所说的"What is a wrapper class in Java":
Java编程语言中的原始包装类是其中之一 java.lang包中提供了八个类来提供对象 八种基本类型的方法。所有原始包装器 Java中的类是不可变的。 J2SE 5.0引入了自动装箱 将原始类型放入其包装器对象中,并自动取消装箱 包装器对象进入其原始值 - 隐式转换 包装器对象和原始值之间。
包装类用于表示Object时的原始值 是必须的。包装类广泛用于Collection java.util包中的类以及中的类 java.lang.reflect反射包。