元组¶
一个 元组 通常使用元组字面量创建
tuple = {1, "hello", 'x'} # Tuple(Int32, String, Char)
tuple[0] # => 1 (Int32)
tuple[1] # => "hello" (String)
tuple[2] # => 'x' (Char)
要创建一个空元组,请使用 Tuple.new.
要表示元组类型,您可以编写
# The type denoting a tuple of Int32, String and Char
Tuple(Int32, String, Char)
在类型限制、泛型类型参数以及需要类型的其他地方,您可以使用更短的语法,如 类型语法 中所述。
# An array of tuples of Int32, String and Char
Array({Int32, String, Char})
散列展开¶
散列运算符可以在元组字面量中使用,以一次解包多个值。散列的值必须是另一个元组。
tuple = {1, *{"hello", 'x'}, 2} # => {1, "hello", 'x', 2}
typeof(tuple) # => Tuple(Int32, String, Char, Int32)
tuple = {3.5, true}
tuple = {*tuple, *tuple} # => {3.5, true, 3.5, true}
typeof(tuple) # => Tuple(Float64, Bool, Float64, Bool)