我可以制作一个数组吗?

Can I make an array of arrays?

我正在尝试在数组中的数组中创建数组。然后使用具有 3 个组件的 UIPickerView,每个组件对应各自的数组。我使用数组的原因是因为数据是这样组织的:

var array1 = [
     "2"
[       "2"
           ["2.5","2.5"],
        "1-1/12"
           ["2.5","2.375"]],
     "3"
[       "2-1/2"
           ["3.375", "3.25"],
[       "2"
           ["3.375", "3"]]]

我试过制作字典来调用(对于 UIPickerView 来说更容易)但是 [(key:value)] 组合不适用于元组。

var dict: [(size: String, outlets: (outlet1: String, measure1: String, measure2: String))] = [
("2", ("1-1/2","2.5","2.375"))
]

func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 3
}

关于数组中的数组或字典中的字典的信息不多。

源数据来自如下图表:

          --> outlet1 --> value1, value2
size1 --> --> outlet2 --> value1, value2
          --> outlet3 --> value1, value2

          --> outlet1 --> value1, value2
size2 --> 
          --> outlet2 --> value1, value2

出口可以与 String 尺寸相同。

我认为你正在尝试这样做:

你想要一个字典,其中 key 是一个字符串,value 是一个包含一个出口和两个度量的自定义结构。

首先为自定义结构创建一个结构:

struct Outlet {
    var outlet1: String = ""
    var measure1: String = ""
    var measure2: String = ""
}

然后创建一个 outlet 并设置其属性:

var myOutlet = Outlet()
myOutlet.outlet1 = "1-1/2"
myOutlet.measure1 = "2.5"
myOutlet.measure2 = "2.375"

并将它们的数组添加到字典中:

var dict = ["2" : [myOutlet]]

或者定义字典并设置值

var dict: [ String : [Outlet] ]
dict["2"] = [myOutlet]