0

特定の条件が満たされた場合、ループをどのように中断しますか?

私の入力ファイルには約 n 行あります。必要な情報が m 番目の行で取得された場合、残りの行を読み取る代わりに、ループを中断する必要があります。

new File("test.txt").readLines().reverseEach{line ->
   println line

   if(line.contains("Data"))
   break;
 }  
4

2 に答える 2

3

これを行うために使用できますfind。Find は、クロージャーが最初に戻ったときにループを終了しtrue、最後に見つかった要素を返します。

これ

(1..20).find{
    println it
    it == 5
}

Groovy コンソールでは次のようになります。

1
2
3
4
5
Result: 5
于 2013-02-18T07:10:47.997 に答える
0

閉鎖から抜け出すことはできません。例外をスローして終了することも、クロージャをまったく使用しないこともできます。配列/リスト内のすべての行を読み取り、それを反復処理します。

于 2013-02-18T06:16:38.943 に答える