whileTrue
戻る必要のない GNU Smalltalkのループから抜け出す簡単で簡潔な方法は何ですか?
これが私のコードです。char_stack
が空の場合は、最後の 31 行目でループから抜けたいと考えています。
https://gist.github.com/SYZYGY-DEV333/ea3f5eeb3473927c8faa294bb72a8858
どんな助けでも大歓迎です。
whileTrue
戻る必要のない GNU Smalltalkのループから抜け出す簡単で簡潔な方法は何ですか?
これが私のコードです。char_stack
が空の場合は、最後の 31 行目でループから抜けたいと考えています。
https://gist.github.com/SYZYGY-DEV333/ea3f5eeb3473927c8faa294bb72a8858
どんな助けでも大歓迎です。
一般に、Smalltalk には、囲んでいるメソッドから戻る以外に、ループから抜け出す方法がありません。
ループから抜け出すために戻ることができる別のメソッドにループを抽出してみてください。
ある意味で、言語である Smalltalk にはループさえありません... しかし、いくつかのメソッドはたまたまブロックを複数回評価します。したがって、「ループ」を終了する特別な方法はありません。帰り道です。
まだ行っていない場合は、Collection のさまざまな反復方法についてよく理解しておいてください: do:
、select:
、collect:
、detect:ifNone:
...あなたは「休憩」を望むかもしれません。