Swift中的模型对象

时间:2015-01-05 08:25:37

标签: class swift struct model

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

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

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

P.S。如果有人执行任务,我不打算使用第三方对象建模器。请随意为可能正在寻找的人推荐一些,但我想学习如何从头开始。

2 个答案:

答案 0 :(得分:2)

可以使用类似别名

创建元组
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]

答案 1 :(得分:1)

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

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

当你想设置密钥时,你可以检查它是否是字母表。

<强>已更新

使用typealiases:

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

var arrayOfResults = [MyDict]()