Skip to Main Content
iOS 编程基础:Swift、Xcode 和Cocoa 入门指南
book

iOS 编程基础:Swift、Xcode 和Cocoa 入门指南

by Matt Neuburg
January 2017
Intermediate to advanced content levelIntermediate to advanced
552 pages
9h 43m
Chinese
China Machine Press
Content preview from iOS 编程基础:Swift、Xcode 和Cocoa 入门指南
228
4
let arr2 = Array(set) // [5,2,3,1,4], perhaps
Set
是一种集合(
CollectionType
),也是个序列(
SequenceType
),这类似于数组与字典,
之前介绍的关于这两种类型的一切也都适用于
Set
。比如,
Set
map
实例方法;它返回
一个数组,当然,如果需要也可以将其转换回
Set
let set : Set = [1,2,3,4,5]
let set2 = Set(set.map {$0+1}) // {6, 5, 2, 3, 4}, perhaps
如果对集合的引用是可变的,那就有很多实例方法可供使用了。你可以通过
insert
集合添加对象;如果对象已经在集合中,那就什么都不会发生,但也没有问题。可以通
remove
方法从集合中删除指定对象并返回;它会返回包装在
Optional
中的对象,如
果对象不存在,那么该方法会返回
nil
。可以通过
removeFirst
方法删除并返回集合中
的第
1
个对象(无论第
1
个指的是什么);如果集合为空,那么应用就会崩溃,因此请
小心行事(或使用安全的
popFirst
)。
集合的相等性比较
==
与你期望的是一致的;如果一个集合中的每个元素都与另一个
集合中的元素相等,那么这两个集合就是相等的。
如果集合的概念让你想起了小学时学到的文氏图,那就太好了,因为集合提供的实例方
法可以让你实现当初学到的所有集合操作。参数可以是集合,也可以是序列(会被转换
为集合);比如,可以是数组、范围,甚至是字符序列:
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

机器学习实战:基于Scikit-Learn、Keras 和TensorFlow (原书第2 版)

Aurélien Géron
Swift 人工智能实战:从基础理论到AI 驱动的应用程序开发

Swift 人工智能实战:从基础理论到AI 驱动的应用程序开发

Mars Geldard, Jonathon Manning, Paris Buttfield-Addison, Tim Nugent

Publisher Resources

ISBN: 9787111556350