基本ruby if语句的问题

jyztefdp  于 2022-11-04  发布在  Ruby
关注(0)|答案(2)|浏览(146)

我试着设置这段代码来检查数组中是否存在某个特定的名字。在这个例子中,我想看看Fred是否在列表中,如果没有,就在下面写上“Name wasn't on the list”。

friends = Array["Kevin", "Karen", "Oscar"]

if (puts friends.include? "Fred" == false)
  puts ("Name wasn't on the list")
end

我是ruby的新手,所以我不确定这是不是正确的方法。任何帮助都将不胜感激。

wd2eg0qa

wd2eg0qa1#

friends = Array["Kevin", "Karen", "Oscar"]

这没有错,只是做得过火了。friends = ["Kevin", "Karen", "Oscar"]很好。

if (puts friends.include? "Fred" == false)
  puts ("Name wasnt on the list")
end

if (puts friends.include? "Fred" == false)行看起来很简单,但是却包含了大量的错误,最重要的是puts总是返回nil

unless friends.include? "Fred" 
  puts "Name wasnt on the list"
end
8i9zcol2

8i9zcol22#

你也可以使用puts "Name wasn't on the list" unless friends.include? (name),在这里用一个简单的方法:

def name_on_list(friends, name)
  puts "Name wasn't on the list" unless friends.include?(name)
end

friends = ["Kevin", "Karen", "Oscar"]
name_on_list(friends, "Fred")

您可以从数组宣告中移除“Array”。
该函数将朋友和姓名作为参数。
在函数中,当不包括名字时,我使用一行程序来打印文本。我倾向于使用括号来传递参数,但它们是可选的。

相关问题