关于包装类

时间:2010-10-13 06:15:55

标签: java

  

可能重复:
  Wrapper class in java

我学习了包装类,它用于包装原始值。您能否详细解释一下Wrapper课程?我们为什么要选择包装类?何时?

1 个答案:

答案 0 :(得分:1)

如果要在只接受对象的位置使用基本数据类型(例如将它们添加到集合中),则需要一个包装类(如Integer或Byte)。

没有类包装器,但是每个基本类型都有一个单独的类(int为Integer,bool为Boolean,字节为Byte,等等。)

这些包装类的工作原理是它们是具有实例字段的对象,这些实例字段包含它们。此外,在Java5中,编译器知道如何自动在它们和基元之间进行转换(称为装箱/拆箱)。

在设计API时,如果它不是可选参数,则应将原语作为方法参数。当它是可选的时,你应该使用包装器,以便可以使用null。

例如

List<String> result = search( "keyword", limit);
// you can set a limit (Integer) or leave it null (no limit).
// easier to understand (I think) than using -1 or 0 or Integer.MAX_VALUE