繰り返し処理の中で last 演算子が実行されるとその時点で繰り返し処理は終了となります。なお終了する繰り返し処理は、 last 演算子が記述されている箇所を含む一番内側の繰り返し処理が対象です。 上記の例では while 文の条件式に 1 と記述しているため、条件式は常に真(true)となりこの while 文は無限ループとなります。ただ、繰り返し処理の中で if 文を使って条件判断を行い、ある条件となったら last 演算子を実行して while 文を終了するようにしてあります。 なお last 演算子によって終了となる繰り返し処理というのは、 while 文、 until 文、 for 文、 foreach 文の他に裸のブロックが対象となります。 if 文などは対象外ですので、上記のサンプルで last 演算子が実行された時に終了するのは if 文ではなく while 文となります。
![last演算子を使った繰り返し処理の終了](https://cdn-ak-scissors.b.st-hatena.com/image/square/61c4e10c1748d2bf61b94890f411a94818e7870a/height=288;version=1;width=512/https%3A%2F%2Fwww.javadrive.jp%2Fperl%2Ffor%2Fimg%2Fp7-0.png)