在阅读Hadoop资料的时候,总是会遇到一些自己不太熟悉的Java概念。对于下面这个,这里的“包装器”这个概念是什么意思呢?我们什么时候需要这种包装器?它在面向对象语言中扮演什么角色?
最佳答案
任何时候您需要使用引用类型(即对象 - 例如 Integer
)而不是原始类型(例如 int
)。
这主要用于泛型中,您需要指定一个类而不是基元:
HashMap<String, Integer> foo = new HashMap<String, Integer>();
在这里,您可能会认为:
HashMap<String, int> foo = new HashMap<String, int>();
可以,但不会,如 int
不是引用类型(类)而是基元。
我们为所有原始类型提供了包装类:
Integer
对于 int
, Byte
对于 byte
, Double
对于 double
, Character
对于 char
等
关于java - Java中包装器的概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22283181/