Groovy / grails如何确定数据类型?

时间:2010-01-13 21:31:32

标签: groovy types

确定groovy中数据类型的最佳方法是什么?

如果是日期等,我想以不同的方式格式化输出

5 个答案:

答案 0 :(得分:224)

要确定对象的类,只需调用:

someObject.getClass()

在大多数情况下,您可以将其缩写为someObject.class。但是,如果您在Map上使用它,它将尝试使用键'class'检索该值。因此,我总是使用getClass(),即使它更长一点。

如果要检查对象是实现特定接口还是扩展特定类(例如Date),请使用:

(somObject instanceof Date)

或检查对象的类是否完全特定类(不是它的子类),使用:

(somObject.getClass() == Date)

答案 1 :(得分:30)

检查对象类型的简单groovy方法:

somObject in Date

也可以应用于接口。

答案 2 :(得分:3)

只是为Don的答案添加另一个选项,您仍然可以使用旧的java.lang.Object.getClass()方法。

答案 3 :(得分:0)

您可以使用成员运算符isCase(),这是另一种常规方式:

assert Date.isCase(new Date())

答案 4 :(得分:-19)

somObject instanceof Date

应该是

somObject instanceOf Date