[解決済み】Rubyで条件演算子(? :)を使うには?
2022-03-27 07:55:52
質問
条件演算子(
? :
)はRubyで使われていますか?
例えば、こんな感じで良いのでしょうか?
<% question = question.size > 20 ? question.question.slice(0, 20)+"..." : question.question %>
解決方法は?
それは 三項演算子 で、C言語のように動作します(括弧は不要です)。のように動作する式です。
if_this_is_a_true_value ? then_the_result_is_this : else_it_is_this
しかし、Rubyでは
if
も式なので
if a then b else c end
===
a ? b : c
ただし、優先順位の問題を除く。どちらも式です。
例
puts (if 1 then 2 else 3 end) # => 2
puts 1 ? 2 : 3 # => 2
x = if 1 then 2 else 3 end
puts x # => 2
最初のケースでは,括弧が必要であることに注意してください(そうしないと,Ruby は,それが
puts if 1
しかし、最後のケースでは、この問題は発生しないので、必要ありません。
複数行で読みやすくするために "long-if" の形式を使うことができます。
question = if question.size > 20 then
question.slice(0, 20) + "..."
else
question
end
関連
-
[解決済み] Rubyのcontinueに相当します。
-
[解決済み] Rubyのswitch文の書き方
-
[解決済み] Rubyでnilとemptyとblankを理解する方法
-
[解決済み] Ruby on Railsで現在の絶対URLを取得するにはどうすればよいですか?
-
[解決済み] Kotlin 三項条件演算子
-
[解決済み] Rubyでファイルに書き込むには?
-
[解決済み] はどのように使うのですか?(条件)演算子をJavaScriptで使うには?
-
[解決済み] VB.NETで条件付き三項演算子はありますか?
-
[解決済み】C言語の三項演算子に相当するGoの慣用句は何ですか?
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】そのようなファイルやディレクトリはありません @ rb_sysopen ruby
-
[解決済み】macOSでrbenvをアンインストールする方法とは?
-
[解決済み] Rubyでファイル名を変更するには?
-
[解決済み] Rubyのコロン演算子とは何ですか?
-
[解決済み] Rubyでリモートホストの到達可能性をpingで確認する方法
-
[解決済み] Gem::Specification.reset中に未解決のスペックがある。
-
[解決済み] string literal in condition "とはどういう意味ですか?
-
[解決済み] Ruby on Railsでホスト名やIPを取得する
-
[解決済み] ファイルの存在を確認する方法 [重複]について
-
[解決済み] 動的な定数割り当て