热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

计算数组中的唯一项.(迅速)

如何解决《计算数组中的唯一项.(迅速)》经验,为你挑选了2个好方法。

如何计算数组中唯一项的数量?

例:

let array:Array = [1,3,2,4,6,1,3,2]

计数功能: array.count将给出8

但我想要计算独特的项目,这将给5



1> vacawama..:

从Swift 1.2开始,Swift有一个原生Set类型.使用Set构造函数从数组中创建一个集合,然后该count属性将告诉您有多少个唯一项目:

let array = [1,3,2,4,6,1,3,2]

let set = Set(array)
print(set.count)  // prints "5"

对于Swift 1.1及更早版本:

把你的阵列变成NSSet:

let array = [1,3,2,4,6,1,3,2]

let set = NSSet(array: array)
println(set.count)  // prints "5"

你可以在这里阅读更多相关信息.


如果您对每件商品的数量感兴趣,可以使用字典来计算商品:

var counts = [Int:Int]()

for item in array {
    counts[item] = (counts[item] ?? 0) + 1
}

print(counts)        // prints "[6: 1, 2: 2, 3: 2, 1: 2, 4: 1]"
print(counts.count)  // prints "5"
print("There are \(counts[1] ?? 0) ones.")    // prints "There are 2 ones."
print("There are \(counts[7] ?? 0) sevens.")  // prints "There are 0 sevens."



2> HAS..:

您可以使用NSSet丢弃重复项:

let array:Array = [1,3,2,4,6,1,3,2]
let count = NSSet(array: array).count
println(count)

这打印:


推荐阅读
author-avatar
我是小白我有不烦的梦想
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有