У меня есть эта функция
func pickAttraction(attractionType: Array<Attraction>) -> Attraction {
let randAttr = attractionType[5]
if favoritesNames.contains(randAttr.attractionName) {
return pickAttraction(attractionType: attractionType)
} else {
return randAttr
}
}
, и моя программа падает (иногда) в строке, начинающейся с "if FavoritesNames". В последний раз, когда произошел сбой, массив FavoritesNames содержал 1 строку, а randAttr.attractionName - другую строку. Я ожидал, что он вернет randAttr, но вместо этого произошел сбой. Кто-нибудь знает, почему?
Я также пытался
if favoritesNames.contains(randAttr.attractionName) || favoritesNames[0] == randAttr.attractionName {
, и я получил ту же ошибку
Я также пытался
func pickAttraction(from attractions: [Attraction]) -> Attraction? {
attractions.filter { !favoritesNames.contains($0.attractionName) }
.randomElement()
}
вместо другой функции, и я все еще получаю ту же ошибку
Спасибо