10、Ruby编程:条件语句与方法详解

Ruby条件语句与方法解析

Ruby编程:条件语句与方法详解

1. 深入理解Ruby比较运算符

在Ruby中,比较运算符有着比表面更复杂的作用。我们将探讨其效果、副作用,以及在满足特定条件时如何跳出代码块。

2. 布尔运算符

Ruby提供了用于测试表达式的布尔运算符,其结果可能为真或假。使用替代布尔运算符时需格外小心,因为优先级的差异会导致条件评估顺序不同,从而产生不同的结果。

以下是示例代码:

# Example 1
if ( 1==3 ) and (2==1) || (3==3) then 
   puts('true') 
else 
   puts('false') 
end
# Example 2
if ( 1==3 ) and (2==1) or (3==3) then 
   puts('true') 
else 
   puts('false') 
end

乍一看,这两个示例似乎相同,但实际上,示例1输出 “false”,而示例2输出 “true”。这是因为 or 的优先级低于 || 。示例1测试的是 “如果1等于3 [假] 且 (2等于1或3等于3) [真]”,由于两个必要条件之一为假,整个测试返回假。示例2测试的是 “(如果1等于3且2等于1) [假] 或 3等于3 [真]”,只要两个测试之一成功即可,第二个测试为真,所以整个测试返回真。

为避免运算符优先级带来的副作用导致的隐晦错误,可使用括号明确测试的含义。以下是修改后的代码:


                
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值