Rubyの複数行の三項式?
概要
次のようなものを変換しようとしています:
if condition?
expression1 line 1
expression1 line 2
expression1 line 3
else
expression2 line 1
end
三項に対する私の質問は、複数の行を 1 行の 1 つの式にどのように入れるかということです。 Javaのようにセミコロンで区切るのでしょうか? このような?
condition? expression1 line 1; expression1 line 2; expression1 line 3 : expression2
解決策
Ruby では常に改行をセミコロンに置き換えることができるので、実際にプログラム全体を 1 つの長い巨大な行で書くことができます。それが可読性と保守性の点で良いかどうかは、あなたにお任せします。 (注: 優先順位が一致しない場合には、グループ化のために括弧を挿入する必要がある場合があります。) 条件式を 1 行で記述する方法は次のとおりです。
if condition? then expression1 line 1; expression1 line 2; expression1 line 3 else expression2 line 1 end