在 Xtend 中使用 typeof

Using typeof in Xtend

这可能是 Xtend 上最愚蠢的问题。但这里是

我正在尝试将以下内容转换为 Xtend

if (obj instanceof Integer) {
    message.reply((Integer)obj);
}

我知道我需要使用 typeof 函数。

我可以使用 typeof 直接替代 instanceof 吗?

typeof 是检索 class 对象的旧语法。如果您使用的是较新版本的 Xtend,则不再需要。除此之外,instanceof 语法与 Java 中的语法一样,但 cast 语句不同,因此您可以编写:

if (obj instanceof Integer) {
    message.reply(obj as Integer)
}

由于支持 Xtend 2.5 自动转换,因此您甚至可以编写:

if (obj instanceof Integer) {
    message.reply(obj) // obj is automatically casted to Integer
}