Ruby:分离多个返回值

标签 ruby return-value

在我下面的示例中,2 和 3 作为数组返回。是否有一种快捷方式可以拆分数组中的值以分配给不同的变量,而无需手动执行 two = answers[0] 之类的操作?

def returnThreeValues
  return 1, returnTwoValues
end

def returnTwoValues
  return 2, 3
end

def shortcut
  one, two, three = returnThreeValues

  puts "one: " + one.to_s
  puts "two: " + two.to_s
  puts "three: " + three.to_s
end

shortcut()

输出:

ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-linux]

one: 1
two: [2, 3]
three: 

最佳答案

@matthew 说的。或者这样:

def returnThreeValues
  return 1, *returnTwoValues
end

关于Ruby:分离多个返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52339720/

相关文章:

java - 在不使用 if/else 语句的情况下将输出限制为某个整数的简单方法?

dictionary - 在函数中从 Hashmap 正确返回 Int

function - 函数的返回值

ruby-on-rails - 添加自定义 HTTP 状态代码符号

ruby-on-rails - rubymine 错误 - 无法在任何来源中找到 capybara-webkit-0.9.0

ruby-on-rails - Ruby:无法分配内存

ruby - 如何在不同的浏览器上运行我的 selenium ruby​​ 脚本?

ruby-on-rails - Rails 控制台无法加载, "Could not find gem ' rails (= 3.0.0.beta3) ruby​​"

Python 函数打印 None

c++ - 返回函数本地的 std::string 的最佳方法