ruby – 如何重述if语句

ruby – 如何重述if语句,第1张

概述我有这个嵌套的if语句,我无法弄清楚如何重构它…它非常简单,但我无法得到正确的想法,希望有人可以提供帮助. 首先,我有一个嵌套的if语句(坏): unless record.valid? if condition_1 action_1 elsif condition_2 action_2 elsif condition_3 action_3 endend 我有这个嵌套的if语句,我无法弄清楚如何重构它…它非常简单,但我无法得到正确的想法,希望有人可以提供帮助.

首先,我有一个嵌套的if语句(坏):

unless record.valID?  if condition_1    action_1  elsif condition_2    action_2  elsif condition_3    action_3  endend

然后我尝试了这个,但这看起来没有任何好转(如果没有任何内部的if语句也是坏的):

if record.valID?  # do nothingelsif condition_1  action_1elsif condition_2  action_2elsif condition_3  action_3end

有没有人知道如何重构这些语句,以便它看起来更好?

更新:解决方案(基于@thomasfedb和@undur_gongor)

我最终做的只是:

return if record.valID?if condition_1  action_1elsif condition_2  action_2elsif condition_3  action_3end
解决方法 如果您利用Ruby的各种if / unless语法和case语句,您可能会发现它更整洁.如果您要使用方法进行换行,您也可以利用返回.

def check_record(record)  return unless record.valID?  case record.some_property  when 1    do_something  when 2    do_whatever  when 3    do_a_dance  endend
@H_301_46@ 总结

以上是内存溢出为你收集整理的ruby – 如何重述if语句全部内容,希望文章能够帮你解决ruby – 如何重述if语句所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1250325.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存