有没有办法让Swtype中的Set类型转换为Array?

时间:2015-08-04 03:21:38

标签: ios arrays swift set

我试图找到一种智能地将Set转换为Array的方法。 例如:

我有一个长度为0到3的Set(意味着设置可能是[" a"," b"," c"]或[&# 34; a"," b"]或[" a"]或[])

然后我想得到一个合适的数组。

像: 集合 - >数组

[" a"," b"," c"] - > [" a"," b"," c"](订单未受到关注)

[" a"," b"] - > [" a"," b",""](nil字符串必须是最后添加的字符串)

[" b"] - > [" b","",""]

[""] - > [""""""]

我怎么能得到这个?有人可以帮帮我吗?

2 个答案:

答案 0 :(得分:1)

您无法在一次操作中完成此操作。

首先,您需要将集合转换为数组,然后需要将数组填充到所需的长度

let mySet = Set(["a", "b", "a"])
var myArray = Array(mySet)


for var index=myArray.count;index<3;index++ {
    myArray.append("")
}

答案 1 :(得分:1)

如果您确定该集合的大小仅为0..3,那么将其转换为数组并填充它:

var mySet = Set<String>() // A set with 0..3 size

var myArray = Array(mySet)
for var i=0;i<3-mySet.count;i++ {
    myArray.append("") // fill the array till size 3
}