Middle
Swift тилинде массивге функцияны кантип кошуу керек?
sobes.tech AI
AIден жооп
Кеңейтүүлөр аркылуу.
extension Array {
// Мисал функция, ал элементти гана кошот, эгер ал массивде дагы жок болсо
mutating func appendUnique<Element: Equatable>(_ element: Element) where Element == Self.Element {
if !self.contains(a: element) {
self.append(element)
}
}
// Генерик менен универсалдуу contains функциясы
func contains<Element: Equatable>(a element: Element) -> Bool where Element == Self.Element {
return self.contains(where: { $0 == element })
}
}
var numbers = [1, 2, 3]
numbers.appendUnique(4) // [1, 2, 3, 4]
numbers.appendUnique(2) // [1, 2, 3, 4] - элемент 2 алгачкы бар
var strings = ["apple", "banana"]
strings.appendUnique("orange") // ["apple", "banana", "orange"]
strings.appendUnique("apple") // ["apple", "banana", "orange"] - элемент "apple" алгачкы бар