Syntax groovy while循环语法赋值和检查变量

Syntax groovy while循环语法赋值和检查变量,syntax,groovy,loops,Syntax,Groovy,Loops,我在读一篇博文,看到一个groovy片段,看起来像 while ( entry = inputStream.nextEntry ) { // do something } 在while循环中,当条目为null时,这种groovy语法是否会导致循环中断?是的,但它可能会让编译器抱怨 可能的意外任务。更好的做法是: while((entry=inputStream.nextery)!=null){}使用Groovy的第一周,我想测试一下。我想我会分享测试和结果。谢谢你指出这一点 def lis

我在读一篇博文,看到一个groovy片段,看起来像

while ( entry = inputStream.nextEntry ) {
  // do something
}

在while循环中,当条目为null时,这种groovy语法是否会导致循环中断?

是的,但它可能会让编译器抱怨 可能的意外任务。更好的做法是:


while((entry=inputStream.nextery)!=null){}
使用Groovy的第一周,我想测试一下。我想我会分享测试和结果。谢谢你指出这一点

def list = ['one', 'two', null, 'four']
def it = list.iterator()
def i
while (i = it.next()) {
    println i
}


Result: one
two

不过对编译器没有任何抱怨。