Swift 中的模型对象

Model Objects In Swift

我正在努力设计一个模型来存储我正在创建的算法的结果。模型当前视觉结构如下:

                                  Array Of Results
                        (containing a Dictionary where...)
                         _______________|_______________
                        |                               |
                        ^                               ^
             (Key: Letter of Alphabet)         (Value: Array of Tuples)

我尝试按照教程、博客和类似问题来创建类和结构,但是它们都没有直接解决我的问题。我选择不提供任何代码,因为我认为它们存在根本性缺陷。我重视任何输入。

p.s。如果有的话,我不打算使用第三方对象建模器。随意向可能正在寻找的人推荐一些,但我想学习如何从头开始。

我想你可以使用这样的字典:

var resultDict = [String: [AnyObject]]()

而且当你想设置key时,你可以检查它是否是字母。

已更新

使用类型别名:

typealias MyTuple = (String, String, Int)
typealias MyDict = [String: MyTuple]

var arrayOfResults = [MyDict]()

可以使用这样的类型别名创建元组

typealias Tuple = (String,Int,Double)

一个元组数组

typealias TupleArray = [Tuple]

从字符串到元组数组的字典

typealias DictionaryOfTuples = [String : TupleArray]

typealias DictionaryOfTuples = [String : [Tuple]] 

可以这样用

var array1:[Tuple] = [("1",1,1.0),("1",1,1.0)]
var array2 :[Tuple] = [("1",1,1.0),("1",1,1.0)]

var single :Tuple = array1[0]

var dictionary1 :DictionaryOfTuples = ["A" : array1, "B" : array2]
var dictionary2 :DictionaryOfTuples = ["C" : array1, "D" : array2]

var final_array = [dictionary1,dictionary2]