Swift'deki jenerikler
Mar 09 2023
Jenerikler, farklı türlerle çalışabilen esnek ve yeniden kullanılabilir kodlar yazmanıza olanak tanır. Jenerikleri kullanarak, yalnızca belirli bir tür yerine herhangi bir türle çalışabilen işlevleri, sınıfları ve yapıları tanımlayabilirsiniz.
Jenerikler, farklı türlerle çalışabilen esnek ve yeniden kullanılabilir kodlar yazmanıza olanak tanır. Jenerikleri kullanarak, yalnızca belirli bir tür yerine herhangi bir türle çalışabilen işlevleri, sınıfları ve yapıları tanımlayabilirsiniz.
Aşağıda, herhangi bir türden bir dizi alan ve bu dizinin ilk öğesini döndüren genel bir işlev örneği verilmiştir:
func firstElement<T>(of array: [T]) -> T? {
array.first
}
Daha sonra bu işlevi herhangi bir dizi türüyle çağırabilirsiniz:
let strings = ["apple", "banana", "orange"]
let firstString = firstElement(of: strings) // "apple"
let numbers = [1, 2, 3]
let firstNumber = firstElement(of: numbers) // 1
struct Stack<T> {
private var elements = [T]()
mutating func push(_ element: T) {
elements.append(element)
}
mutating func pop() -> T? {
elements.popLast()
}
}
var stringStack = Stack<String>()
stringStack.push("apple")
stringStack.push("banana")
let poppedString = stringStack.pop() // "banana"
var numberStack = Stack<Int>()
numberStack.push(1)
numberStack.push(2)
let poppedNumber = numberStack.pop() // 2
Donovan, Şarkılarından 1'ini The Beatles'ın "Lucy in the Sky with Diamonds" şarkısıyla karşılaştırdı
Gene Simmons, KISS Çizgi Romanlarının Potansiyel Olarak "İnsanlığı Yeniden Yaratabileceğini" Söyledi
Tom Girardi Dolandırıcılık Suçlamalarından Yargılanma Yetkisinin Belirlenmesi İçin Duruşmaya Katıldı
Kevin Jonas'ın Kızı Alena, Doğum Günü Fotoğrafında Büyümüş Görünüyor: '9 Yaşında Gerçek Hissetmiyor'

![Bağlantılı Liste Nedir? [Bölüm 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































