在 Ruby 中编写单行 if 语句
与其他现代编程语言一样,Ruby 有不同的表达条件流的方式,但更灵活。
在本教程中,我们的重点将是如何使用 if
、else
和 unless
编写单行条件语句。
在 Ruby 中使用三元运算符编写单行 if 语句
三元
运算符的用法类似于它在其他编程语言中的使用方式。它具有以下语法。
condition ? do_something_if_condition_is_true : do_another_thing_if_condition_is_false
示例代码:
def check_even(number)
response = number.even? ? "Yeah, it's even" : "No, it's not"
puts response
end
check_even(4)
check_even(5)
输出:
Yeah, it's even
No, it's not
在 Ruby 中仅使用 IF
编写单行语句
当你只想在条件为真时做某事而在条件为假时什么都不做时,这很有用。
def increment_with_even(n)
number = 10
number += n if n.even?
puts number
end
increment_with_even(4)
increment_with_even(5)
输出:
14
10
在 Ruby 中使用 IF-Else
编写单行语句
这是一个常规的 if-else
,如果条件为真,则指定一个动作,如果条件为假,则指定另一个动作。
def check_even(number)
response = if number.even? then "Yeah, it's even" else "No, it's not" end
puts response
end
check_even(4)
check_even(5)
输出:
Yeah, it's even
No, it's not
在 Ruby 中使用 unless
编写单行语句
unless
是 if
的相反形式。这意味着如果没有。
def increment_with_even(n)
number = 10
number += n unless !n.even?
puts number
end
increment_with_even(4)
increment_with_even(5)
输出:
14
10
不推荐在上面的例子中使用 unless
。使用这种方式进行说明。
unless
被视为否定陈述。在这种情况下,它不应该用于否定表达式 !n.even?
使代码更难理解。
在 Ruby 中使用 Unless-Else
编写单行语句
def check_even(number)
response = unless number.even? then "No, it's not" else "Yeah, it's even" end
puts response
end
check_even(4)
check_even(5)
输出:
Yeah, it's even
No, it's not
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。