gpt4 book ai didi

Ruby 三元运算符和 elsif

转载 作者:数据小太阳 更新时间:2023-10-29 08:16:31 38 4
gpt4 key购买 nike

我想使用三元语法编写 if...elsif 语句。我可以在此语句中再添加一次对 ARGV[1] 的检查吗?

test-expression ? if-true-expression : if-false-expression
ARGV[1] == "home" ? (installabra) : (puts menuInstall)

- 这行得通

最佳答案

你可以用 if...elsif...else...end 做的任何事情

if cond1
stmt1
elsif cond2
stmt2
elseif cond3
stmt3
else
stmt4
end

您可以使用嵌套的三元运算符:

cond1 ? stmt1 : (cond2 ? stmt2 : (cond3 ? stmt3 : stmt4)))

或者更不清晰,省略括号:

cond1 ? stmt1 : cond2 ? stmt2 : cond3 ? stmt3 : stmt4

但要考虑哪些代码更清晰、更易于维护。

在您的问题中,您询问是否可以在嵌套条件下对 ARGV[1] 进行另一个测试。如果您的条件总是测试 ARGV[1] 是否相等,那么 case 语句更优:

case ARGV[1]
when 'home'
installabra
when 'away'
goaway
else
puts menuInstall
end

关于Ruby 三元运算符和 elsif,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15478357/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com