Вы можете использовать Dictionary
'init(grouping:by:)
initializer для создания такого словаря:
let array = [15,17,19,22,24,24,27]
let dict = Dictionary(grouping: array, by: { $0 / 10 })
// dict is [2: [22, 24, 24, 27], 1: [15, 17, 19]]
Если я вас правильно понял, у вас, вероятно, есть куча Athlete
с, и у них есть свойство reps
. Вы можете группировать по $0.reps / 10
вместо:
Dictionary(grouping: athletes, by: { $0.reps / 10 })
А затем сопоставьте ключи и значения с этим:
.map { ("\($0.key * 10) - \(($0.key + 1) * 10)", $0.value.count) }
// now you have this:
// [("20 - 30", 4), ("10 - 20", 3)]