开发者

is there a ruby one-line "return if x"?

开发者 https://www.devze.com 2023-02-20 00:43 出处:网络
have a ton of places I need to add if this_flag return end can 开发者_如何转开发that be done on one line with ruby?

have a ton of places I need to add

if this_flag
  return
end

can 开发者_如何转开发that be done on one line with ruby?


is there a ruby one-line “return if x” ?

Yes:

return value if condition

I love Ruby :-)


Some additions to Jörg W Mittag's good answer:

x && return
x and return
if x then return end

I do not actually recommend the first two forms: however, the above examples are all valid productions. I personally prefer to avoid return in general -- most grammar constructs in Ruby are usable expressions.

Happy coding.


Ruby always returns the last thing... Why not just structure your code differently?

def returner(test)    
  "success" if test   
end

Whatever you've done last will return. I love Ruby.


Create a method that check for the expected class types Example below. Method check_class will return true as soon as it finds the correct class. Useful if you may need to expand the number of different class types for any reason.

def check_class(x)
  return true if is_string(x) 
  return true if is_integer(x)
  # etc etc for possible class types
  return false # Otherwise return false
end

def is_string(y)
  y.is_a? String
end

def is_integer(z)
  z.is_a? Integer
end


a = "string"
puts "#{check_class(a)}"
0

精彩评论

暂无评论...
验证码 换一张
取 消