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 入门指南
Cocoa
443
因此,这个方法可以在不变与可变这两个方向传递数组。还可以使用
copy
(生成一个不
可变副本)与
mutableCopy
(生成一个可变副本),它们都继承自
NSObject
;不过这两
个方法都不是很方便,因为它们生成的都是
AnyObject
,你还需要进行类型转换。
这些不变
/
可变类都实现为了类簇,这意味着
Cocoa
会使用一个秘密类,这个类
与文档中所记录的那个类是不同的。可以通过查看底层代码了解到这一点;就拿
NSStringFromClass(s.dynamicType)
说,其中
s
是个
NSString
,它会生成一个
神秘值
"__NSCFString"
你不应该在这个秘密类上花太多时间。随着时间的流逝,
这个类可能会发生变化,但却不会通知你,而且与你也没有任何关系;你永远都不
需要知道它。
10.4.14
属性列表
属性列表是数据的字符串(
XML
)表示。只有
Foundation
NSString
NSData
NSArray
NSDictionary
才能被转换为属性列表。此外,只有当
NSArray
NSDictionary
中的类是这些类以及
NSDate
NSNumber
时,它们才能被转换为属性列表。
(如前所述,这正是你需要将
UIColor
转换为
NSData
才能在
user defaults
中存储的原因
所在;
user defaults
就是个属性列表。)
属性列表的主要作用是将数据存储为文件。它是值序列化的一种方式,即将值以一种形
式存储到磁盘中,然后还可以将这种形式的值重建。
NSArray ...
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