Я пытаюсь понять инициализатор uniqingKeysWith для словарей, но сталкиваюсь с некоторыми проблемами при попытке использовать анонимное закрытие, чтобы указать, какое значение в кортеже использовать в качестве уникальных ключей.
let pairsWithDuplicateKeys = [("a", 1), ("b", 2), ("a", 3), ("b", 4)]
let dictionary = Dictionary(pairsWithDuplicateKeys, uniquingKeysWith: {$0.0})
Это дает мне ошибка «Тип контекстного замыкания» (Int, Int) throws -> Int «ожидает 2 аргумента, но 1 использовался в теле замыкания», и я экспериментировал с добавлением аргументов, но я не могу понять, что другой аргумент является то, что он ссылается на.
Неанонимизированная версия ниже работает нормально, но я хотел бы понять анонимную версию.
let dictionary = Dictionary(pairsWithDuplicateKeys, uniquingKeysWith: {(key, value) in key})