ruby 数组将 first,second 放入变量,其余放入另一个变量

标签 ruby arrays variables

我想把一个数组分成三个变量;第一个值放入一个变量,第二个值放入另一个变量,其余所有放入一个字符串,例如:

arr = ["a1","b2","c3","d4","e5","f6"]
var1 = arr[0] # var1 => "a1"
var2 = arr[1] # var2 => "b2"
var3 = ? # var3 should be => "c3d4e5f6"

需要什么代码来实现每个变量的列出值?

最佳答案

这看起来和任何东西一样好:

arr = ["a1","b2","c3","d4","e5","f6"]
var1 = arr[0]            # => "a1"
var2 = arr[1]            # => "b2"
var3 = arr[2..-1].join   # => "c3d4e5f6"

如果你不需要保留arr,你可以这样做:

arr = ["a1","b2","c3","d4","e5","f6"]
var1 = arr.shift   # => "a1"
var2 = arr.shift   # => "b2"
var3 = arr.join    # => "c3d4e5f6"

别人都在指出splat运算符,可以理解,但我觉得这个比上面的还差:

arr = ["a1","b2","c3","d4","e5","f6"]
var1, var2, *tmp = arr
var3 = tmp.join

是这样的:

arr = ["a1","b2","c3","d4","e5","f6"]
var1, var2, *var3 = arr
var3 = var3.join

不过,这是一个需要注意的选项。

关于ruby 数组将 first,second 放入变量,其余放入另一个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16929814/

相关文章:

php - mysql查询循环,结果存储在数组中

PHP 设置普通变量更改 session 变量

ruby - 如何从蛋白石调用 native javascript 方法?

ruby - Mac OS X 10.6.8 手动编译 Ruby 时的 GEM 在哪里?

arrays - Lua中的三维表

c# - 二维遍历的最佳数据结构?

javascript - 在 JavaScript 中将变量分配给对象

c# - C#在数学表达式中使用未分配的变量

html - 在 Sinatra 表单中格式化日期字段

ruby - 如何通过 ruby​​ UDPSocket 类发送原始十六进制数据?