哪一个最好编程 - int
或Integer
?特别是每个人都在做同样的任务?
我正在用Java编写应用程序。在原始数据类型的大多数地方,我使用int
;对于物体,我使用Integer
。所以我很困惑 - 哪一个是最好的地方,我们必须使用对象。
根据性能,哪一个最适合Java应用程序?
尽可能使用int
。仅在以下情况下使用Integer
:
Integer
可以是null
,int
总是有一个int值。List
这样的集合(尽管你可以在外部使用int
并且自动装箱会隐藏集合内部存储Integer
实例的事实)。Integer
或Object
的API,框架或工具,或者不能使用基本类型。int
是一个原始的,通常它应该更快。它只携带原始数据。
Integer
是一个对象,它携带一些额外的东西,所以你例如可以将数字放在列表中。
int是原始的,Integer是一个包裹为对象的int。
这取决于你将如何使用它们。
作为另一种观点....也许你既不应该使用Integer也不应该使用int。
如果值实际上是具有行为的对象 - 比如说金额,或距离或某事,那么也许您应该使用具有行为的对象。
你可以在这里看到更多关于这种事情:
http://www.time4tea.net/wiki/display/MAIN/Microtypes
虽然这可能会“慢”,但额外的类型安全性将使您的系统的编程,测试和调试变得更加容易和快捷。