当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Swift Dictionary init(grouping:by:)用法及代码示例


初始化器

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+

相关用法


注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Dictionary init(grouping:by:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。