rubyで1回目は必ず実行するwhile

[code]

    while false
      puts 1
    end
    
[/code]

このような条件でも1回は必ず実行するwhileはrubyでは用意されていないでしょうか




既出ですがbegin節とwhile修飾子(後置while)を組み合わせるとできます。

[code]

    begin
      puts 1
    end while false
    
[/code]

が。[Ruby Style Guideではこの記法は推奨されていません](https://github.com/bbatsov/ruby-style-
guide/blob/master/README.md#loop-with-break)。かわりに`loop/break`の組み合わせを使ってください。

[code]

    loop do
      puts 1
      break unless false
    end
    
[/code]

while修飾子はbegin節と組み合わせるか否かで動作が異なりますので、誤解によるバグの種となります。

[code]

    puts 1 while false #何もしない
    
    begin; puts 1; end while false #puts 1が呼ばれる
    
[/code]

