当前位置:  开发笔记 > 后端 > 正文

设置elsif范围条件时如何避免错误?

如何解决《设置elsif范围条件时如何避免错误?》经验,为你挑选了1个好方法。



1> Kristján..:

你有一些问题:

当其他操作符或方法在附近时,您需要将范围放在括号中.您当前的错误来自Ruby解析elsif @tree_age == 6..15与您预期的不同 - 它将其视为(1 == 6)..15,并且false..15显然没有任何意义.

要测试一个数字在一个范围内,请使用(1..5) === num,而不是num == (1..5).Range#===被定义为测试该Range包括右手侧,而Fixnum#==Fixnum#===这两个只是测试的右手侧在数值上相等.

你不需要测试@tree_age > 0.你已经在测试它了1..5.

您还可以考虑使用case此语句,这可能更容易阅读.case使用它进行比较===.

@oranges = case @tree_age
           when 1..5 then 5
           when 6..15 then 20
           else 50
           end

推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有