【发布时间】:2023-03-30 12:13:01
【问题描述】:
为这样的元组专门保留不同的数据类型配对是否有好处:
[(23, "Jordan"), (8, "Bryant")]
与仅使用二维列表相反:
[[23, "Jordan"], [8, "Bryant"]]
我知道第二段代码在 Haskell 中不起作用
【问题讨论】:
-
列表必须包含所有相同的类型。如果你想要多种类型,那就是元组的用途。元组还保持长度固定,这有时可能很重要。列表没有。
-
列表的每个元素都是一个元组。这些元组中的每一个都将包含相同数量和类型的元素。
-
元组是固定长度的,但可以混合类型。列表具有任意长度,但仅包含单一类型的元素。
-
静态类型结构的许多无类型对应物对于相同的功能来说“足够了”,即使是 Assembly,所以该参数是一个重言式,并且不建议您应该使用无类型或更少类型的结构,如果你选择了一种大量建立在其静态类型系统上的语言,例如 Haskell。