初始化器
init(grouping:
init(grouping:by:)
创建一个新字典,其键是给定闭包返回的分组,其值是返回每个键的元素的数组。
声明
init<S>(
grouping values: S,
by keyForValue: (S.Element) throws -> Key
) rethrows where Value == [S.Element], S : Sequence
参数
values
要分组到字典中的值序列。
keyForValue
为
values
中的每个元素返回一个键的闭包。
详述
新字典“values”位置的数组每个都包含至少一个元素,且元素的顺序与源序列相同。
以下示例声明了一个名称数组,然后通过按首字母分组名称从该数组创建一个字典:
let students = ["Kofi", "Abena", "Efua", "Kweku", "Akosua"]
let studentsByLetter = Dictionary(grouping: students, by: { $0.first! })
// ["E": ["Efua"], "K": ["Kofi", "Kweku"], "A": ["Abena", "Akosua"]]
新的 studentsByLetter
字典包含三个条目,学生的姓名由键 "E"
、 "K"
和 "A"
分组。
可用版本
iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+
相关用法
- Swift Dictionary init(uniqueKeysWithValues:)用法及代码示例
- Swift Dictionary init(dictionaryLiteral:)用法及代码示例
- Swift Dictionary init(_:uniquingKeysWith:)用法及代码示例
- Swift Dictionary index(forKey:)用法及代码示例
- Swift Dictionary indices用法及代码示例
- Swift Dictionary index(_:offsetBy:)用法及代码示例
- Swift Dictionary index(_:offsetBy:limitedBy:)用法及代码示例
- Swift Dictionary isEmpty用法及代码示例
- Swift Dictionary allSatisfy(_:)用法及代码示例
- Swift Dictionary values用法及代码示例
- Swift Dictionary dropFirst(_:)用法及代码示例
- Swift Dictionary firstIndex(where:)用法及代码示例
- Swift Dictionary first(where:)用法及代码示例
- Swift Dictionary merge(_:uniquingKeysWith:)用法及代码示例
- Swift Dictionary subscript(_:default:)用法及代码示例
- Swift Dictionary reduce(_:_:)用法及代码示例
- Swift Dictionary suffix(from:)用法及代码示例
- Swift Dictionary subscript(_:)用法及代码示例
- Swift Dictionary makeIterator()用法及代码示例
- Swift Dictionary randomElement()用法及代码示例
- Swift Dictionary dropLast(_:)用法及代码示例
- Swift Dictionary min(by:)用法及代码示例
- Swift Dictionary max(by:)用法及代码示例
- Swift Dictionary updateValue(_:forKey:)用法及代码示例
- Swift Dictionary removeValue(forKey:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Dictionary init(grouping:by:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。