ios swift 基础 合集- 荔枝 点击查看更多
-
extension Array : RangeReplaceableCollection 提供了替换集合中一个连续区间的元素的能力
extension Array : RangeReplaceableCollection {
}
-
extension Array : CustomReflectable Mirror反射
extension Array : CustomReflectable {
/// A mirror that reflects the array.
public var customMirror: Mirror { get }
}
-
extension Array : ExpressibleByArrayLiteral 字面量表达
extension Array : ExpressibleByArrayLiteral {
}
-
CustomStringConvertible, CustomDebugStringConvertible description描述
extension Array : CustomStringConvertible, CustomDebugStringConvertible {
public var description: String { get }
public var debugDescription: String { get }
}
-
extension Array : RandomAccessCollection, MutableCollection 继承 Collection
随机存取集合类型
RandomAccessCollection可变集合协议,支持原地修改元素
MutableCollection
extension Array : RandomAccessCollection, MutableCollection {
}
-
extension Array : Equatable 判断是否相等
extension Array : Equatable where Element : Equatable {
@inlinable public static func == (lhs: [Element], rhs: [Element]) -> Bool
}
-
extension Array : Hashable
extension Array : Hashable where Element : Hashable {
@inlinable public func hash(into hasher: inout Hasher)
public var hashValue: Int { get }
}
Hashable 继承 Equatable。
Swift特性你可以使用自定义的类型作为合集的值或者字典的key,只需要让他遵循Hashable协议
-
extension Array : Encodable Codable 将模型对象转换为 JSON 或者是其它的数据格式
extension Array : Encodable where Element : Encodable {
public func encode(to encoder: Encoder) throws
}
-
extension Array : Decodable Codable 将模型对象转换为 JSON 或者是其它的数据格式
extension Array : Decodable where Element : Decodable {
public init(from decoder: Decoder) throws
}
-
Swift集合协议大家族构成图
-
String ,Array Collection 区分