Edited at

ruby unless文にelsifはないよ。。。

More than 1 year has passed since last update.

とても単純なことですが、自分がアルゴリズム問題を解いていてはまってしまったので一応。


対象読者

・ruby初心者


内容

タイトルの通りなのですが、rubyのunless文にelsifは使えません。

例えば


unless.rb

hoge = "動物名"

unless hoge == "猫"
puts "猫ではありません"
elsif hoge == "犬"
puts "犬ではありません"
end

みたいな処理はできません。

こういった処理をしたい場合


if.rb

hoge = "動物名"

if hoge != "猫"
puts "猫ではありません"
elsif hoge != "犬"
puts "犬ではありません"
end


if2.rb

hoge = "動物名"

if !hoge == "猫"
puts "猫ではありません"
elsif !hoge == "犬"
puts "犬ではありません"
end


unless.rb

hoge = "動物名"

if not hoge == "猫"
puts "猫ではありません"
elsif not hoge == "犬"
puts "犬ではありません"
end

とかいう感じに変えてあげましょう。

ってかそもそも、unlessってぱっと見どっちだっけとか、わかりづらいからあんま使わないほうがいいのかもね