arrays - 无法快速将 [Int] 转换为整数

标签 arrays swift

我有 5 个数组。我从数组中删除了重复项。但是,我无法在新数组中存储新值。我按照以下方法在运行时进行转换。以下逻辑将在循环内发生。但是,我非常详细地展示了我的逻辑。我无法将整数数组转换为 int。所以我尝试将整数数组转换为字符串。但是失败了。我的编码如下。

var arr_1 = [Int]()
var arr_2 = [Int]()
var arr_3 = [Int]()
var arr_4 = [Int]()
var arr_5 = [Int]()
var arr_final = [Int]()

arr_1 = [2,2,2,2,2,2]
arr_2 = [3,3,3]
arr_3 = [5,5,5,5,5]
arr_4 = [1,1,1,1]
arr_5 = [0]

我的输出是:

arr_final = [2,3,5,1,0]

我的编码

var str_1 = String(stringInterpolationSegment: uniq(arr_1)).toInt()

arr_final.append(str_1!) //PRINTS FATAL ERROR


//REMOVE DUPLICATES
func uniq<S: SequenceType, E: Hashable where E==S.Generator.Element>(source: S) -> [E] {
    var seen: [E:Bool] = [:]
    return filter(source) { seen.updateValue(true, forKey: $0) == nil }
}

最佳答案

函数 uniq 总是返回一个 Int 数组。

要将 Array 附加到现有 Array,请使用 extend 而不是 append

var arr_final = [Int]()

let arr_1 = [2,2,2,2,2,2]
let result = uniq(arr_1)
arr_final.extend(result)

关于arrays - 无法快速将 [Int] 转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31920080/

相关文章:

ios - Swift:在 AppDelegate 中设置标签文本

arrays - 如何加快通用数组的复制速度?

c - 将浮点指针设置为从头文件读取的字符数组

arrays - PowerShell 如何将 Get-ChildItem 输出转换为字符串数组

ios - 如何防止单击叠加层时调用背景 View 中的 UITapGestureRecognizer

ios - Swift Google Place Autocomplete 无法与 Google map 配合使用

ios - Swift3 - 从数据库计算现在和日期之间的时差

objective-c - 如何将 swift 代码转换为 Objective C 代码

javascript - 将嵌套整数数组转换为平面整数数组 - javascript

Javascript数组对象到逗号分隔的单行数组