Вы можете использовать метод массива reduce()
для этого:
func getNumberOfWonGame() -> Int {
games.reduce(0) { (result, game) in
game.isWin ? result + 1 : result
}
}
func getNumberOfWonGameShortened() -> Int {
games.reduce(0) { $1.isWin ? $0 + 1 : $0 }
}
Для вашего конкретного примера это может быть:
func winCountMethod(from games: [[Game?]], index: Int) -> Int {
games[index].reduce(0) { (result, game) in
guard let game = game, !game.win else { return result }
return result + 1
}
}