跳到内容

命名元组

一个 命名元组 通常使用命名元组字面量创建

tuple = {name: "Crystal", year: 2011} # NamedTuple(name: String, year: Int32)
tuple[:name]                          # => "Crystal" (String)
tuple[:year]                          # => 2011      (Int32)

要表示命名元组类型,您可以编写

# The type denoting a named tuple of x: Int32, y: String
NamedTuple(x: Int32, y: String)

在类型限制、泛型类型参数和其他需要类型的其他地方,您可以使用更短的语法,如 类型语法 中所述

# An array of named tuples of x: Int32, y: String
Array({x: Int32, y: String})

命名元组键也可以是字符串字面量

{"this is a key": 1}