如何从数组中获取公共元素并创建新的数组集?

man*_*yap 0 arrays ios swift

 let arrayA = ["Orange", "Apple", "grapes", "Orange", "Apple","Apple"]
Run Code Online (Sandbox Code Playgroud)

预期结果将是这样的:

   let arrSet1 = ["Orange", "Orange"]
   let arrSet2 = ["Apple", "Apple", "Apple"]
   let arrSet3 = ["grapes"]
Run Code Online (Sandbox Code Playgroud)

PGD*_*Dev 6

使用Dictionary's init(grouping:by:),

let arrays = Array(Dictionary(grouping: arrayA, by: {$0}).values)
print(arrays)
Run Code Online (Sandbox Code Playgroud)

现在,从arrays创建其他 arrSet1 和其他人像这样,

let arrSet1 = arrays[0]
let arrSet2 = arrays[1]
let arrSet3 = arrays[2]
Run Code Online (Sandbox Code Playgroud)

确保您访问arrays基于计数,否则它可能会抛出索引越界异常。