为什么 groovy 语句最后的“:”不会抛出任何错误?
Why does ":" at the last of a groovy statement does not throw any error?
我在 groovy 控制台中错误地写了以下内容,但后来我意识到它应该抛出错误,但它没有。 groovy 在语句的最后没有为冒号抛出任何错误背后的原因是什么?它是否分配给文档或类似的东西?
a:
String a
println a
中执行此代码时,这没有引发任何错误
这是一个标签,就像在 Java 中一样。例如:
a:
for (int i = 0; i < 10; i++)
{
String a = "hello"
println a
break a; // This refers to the label before the loop
}
我能想到的 Groovy 中标签的一个很好的用法是 Spock Framework
,它们用于从句:
def 'test emailToNamespace'() {
given:
Partner.metaClass.'static'.countByNamespaceLike = { count }
expect:
Partner.emailToNamespace( email ) == res
where:
email | res | count
'aaa.com' | 'com.aaa' | 0
'aaa.com' | 'com.aaa1' | 1
}
我在 groovy 控制台中错误地写了以下内容,但后来我意识到它应该抛出错误,但它没有。 groovy 在语句的最后没有为冒号抛出任何错误背后的原因是什么?它是否分配给文档或类似的东西?
a:
String a
println a
中执行此代码时,这没有引发任何错误
这是一个标签,就像在 Java 中一样。例如:
a:
for (int i = 0; i < 10; i++)
{
String a = "hello"
println a
break a; // This refers to the label before the loop
}
我能想到的 Groovy 中标签的一个很好的用法是 Spock Framework
,它们用于从句:
def 'test emailToNamespace'() {
given:
Partner.metaClass.'static'.countByNamespaceLike = { count }
expect:
Partner.emailToNamespace( email ) == res
where:
email | res | count
'aaa.com' | 'com.aaa' | 0
'aaa.com' | 'com.aaa1' | 1
}