Фильтрация результатов в массиве с использованием переменной в Swift - PullRequest
1 голос
/ 11 мая 2019

У меня есть коллекция марок автомобилей и моделей, и мне было интересно, есть ли способ вернуть только модели, принадлежащие к определенным маркам, используя переменную в качестве условия?Спасибо.

Я пытался использовать операторы if, но, может быть, есть другой способ сделать это?

struct Section {

 var make: String
 var model: String!

}

var Cars = [
 Section(make: "BMW", model: ["A", "B", "C"]),
 Section(make: "Ford", model: ["D", "E", "F"]),
 Section(make: "Audi", model: ["G", "H", "I"])
]

var carMake = "BMW"

// aiming to print the models where make = carMake
// for example if carMake = "BMW" the print results would show "A", "B", "C"

1 Ответ

0 голосов
/ 11 мая 2019
struct Section {

  var make: String
  var models: [String]

}
var cars = [
  Section(make: "BMW", models: ["A", "B", "C"]),
  Section(make: "Ford", models: ["D", "E", "F"]),
  Section(make: "Audi", models: ["G", "H", "I"])
]

var carMake = "BMW"

let carMaker = cars.first { (item) -> Bool in
  return item.make == carMake
}

if let carMaker = carMaker {
  print(carMaker.models)
} else {
  print("maker not found")
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...