當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。