【发布时间】:2016-01-21 13:54:21
【问题描述】:
我是 Java/Groovy 的新手,我想问一下何时以及为什么应该使用 long 或 Long 数据类型。
我问这个问题,因为我需要为有 long 和 Long 类型的函数编写单元测试,并且我试图理解为什么它们会这样设置。
【问题讨论】:
-
您的问题是为什么要使用 long 而不是其他类型(例如 int),或者什么时候应该使用 long 而不是 Long,反之亦然?
-
@user1675642 "为什么我应该使用 long 或 Long 数据类型"
-
我知道 long 是一个原始类型,而 Long 是一个对象。我的问题是在哪种情况下我应该更好地使用它。因为当我为函数编写单元测试时,我无法长时间测试空输入。
-
Effective Java 2nd Ed Item 49 详细处理了这个问题(尽管书中的其他项目也涉及到这个问题)。
-
“因为当我为函数编写单元测试时,我无法长时间测试空输入”这是否暗示了选择其中之一的原因:如果您选择
long,你不需要测试通过null,因为你根本做不到。类型系统可以节省您的工作量。