Swift'de Tuple

Bu makale, Tuple'ın ne olduğunu ve ne zaman ve nerede kullanıldığını açıklar. Mutlu okumalar !!!

resim kredisi: Stocksnap.io

Tuple, tek olarak temsil edilen farklı değerler grubudur. Apple'a göre, bir demet türü, parantez içine alınmış sıfır veya daha fazla türün virgülle ayrılmış bir listesidir . Bir yapının minyatür bir versiyonu.

Bir örnek ele alalım: Bir isim, John Smith'in bir demet gibi ilan edilebileceğini söylüyor ("John", "Smith"). Bir kişinin adını ve soyadını tutar. İç değerlere nokta ( .) gösterimini ve ardından değerin dizinini kullanarak erişebilirsiniz :

var person = ("John", "Smith")

var firstName = person.0 // John
var lastName = person.1 // Smith

()boş demettir - hiç öğesi yoktur. Aynı zamanda Voidtürü de temsil eder .

Tuples, hashable protokole uymuyor. Bu nedenle sözlük anahtarları olarak kullanılamaz.

Bir demet oluşturma:

Herhangi bir değişken veya sabit gibi bir demet tanımlayabilirsiniz. Onu başlatmak için başka bir demete veya bir demete ihtiyacınız olacak. Bir demet değişmezi, bir çift parantez arasında virgülle ayrılmış değerler listesidir. Değişken olarak bildirilmişse, bir demetten değerleri değiştirmek için nokta gösterimini kullanabilirsiniz.

var point = (0, 0)

point.0 = 10
point.1 = 15

point // (10, 15)

var origin = (x: 0, y: 0)

var point = origin
point.x = 3
point.y = 5

print(origin) // (0, 0)
print(point) // (3, 5)

Bir demetten öğeleri adlandırabilir ve bunlara başvurmak için bu adları kullanabilirsiniz. Bir öğe adı, iki nokta üst üste (:) tarafından izlenen bir tanımlayıcıdır.

var person = (firstName: "John", lastName: "Smith")
var firstName = person.firstName // John
var lastName = person.lastName // Smith

Tek bir satırda birden fazla değişkeni başlatmak için tupleları kullanabilirsiniz:

var (a, b, c) = (1, 2, 3)

Sonuç türünü bir demet olarak ayarlarsanız, bir işlevden birden çok değer döndürebilirsiniz.

Lütfen tupleların referansla değil değere göre aktarıldığını unutmayın .

Yukarıdaki kodda, kod okunabilirliği typealiasiçin tuple yapısını önceden tanımlamak için a kullandım .

Hem anahtar hem de değer elde eden bir sözlüğü yinelemek için dizeler:

for (key,value) in myDictionary {
println("My key is \(key) and it has a value of \(value)")
}

Not : _"Bu değer umrumda değil" anlamına gelir

for (key,_) in myDictionary {
println("My key is \(key)")
}


let http404Error = (404, "Not Found")
// http404Error is of type (Int, String), and equals (404, "Not Found")

let (statusCode, statusMessage) = http404Error
print("The status code is \(statusCode)")
// Prints "The status code is 404"
print("The status message is \(statusMessage)")
// Prints "The status message is Not Found"

let (justTheStatusCode, _) = http404Error
print("The status code is \(justTheStatusCode)")
// Prints "The status code is 404"

print("The status code is \(http404Error.0)")
// Prints "The status code is 404"
print("The status message is \(http404Error.1)")
// Prints "The status message is Not Found"

let http200Status = (statusCode: 200, description: "OK")

başka bir demet içeren tuple oluşturarak karıştıracağız.

let bar: (Int, (Bool, String)) = (1, (false, "Hello"))
print(bar.0) // print: “1”
print(bar.1.0) // print: “false”
print(bar.1.1) // print: “Hello”

var a = 5 
var b = 4 
(b, a) = (a, b)

Bir demeti kullanmak için en iyi yer, birden çok tür döndürebilen bir işlev istediğiniz zamandır. Bir Objective-C geliştiricisi iseniz, bir dizi veya sözlük kullanmadığınız sürece bu kavram kulağa imkansız geliyor. Daha önce, bu tür bir sorunun üstesinden bir NSArrayveya döndürerek geçmek zorunda kaldık NSDictionary.

Kaynaklar: Orta düzey makale , W eheartswift .

Bu kadar. !

Zevk almak!!

Bu yazıyı okumaktan keyif aldıysanız, lütfen paylaşın ve başkalarının bulabilmesi için alkışlar verin 👏👏👏👏👏 !!!!

Yeni makaleler için beni Medium'da takip edebilirsiniz . Ayrıca, LinkedIn üzerinden benimle bağlantı kurun .

Herhangi bir yorumunuz, sorunuz veya öneriniz varsa, bunları aşağıdaki yorum bölümüne göndermekten çekinmeyin!

Suggested posts

“O küçük ada her şeyi değiştirir”

Sürücü deneyimini yükseltmek için Lyft Canlı Etkinlikleri nasıl tasarladık?

“O küçük ada her şeyi değiştirir”

Yolculuk paylaşımı için ezber bozan bir şey Lyft'te yaptığımız her şey arasında, sürücüler ve sürücüler arasındaki alışmaların koreografisini yapmak en karmaşık ve önemli olanlardan biridir. Bu koreografiyi başarmak, Lyft'in pek çok şeyi iyi yapmasına bağlıdır, ancak yalnızca binicileri hıza uydurmak çok önemlidir.

Uygulama Yaşam Döngüsü

Uygulama Yaşam Döngüsü

: Uygulama başlatmadan kapatmaya döngü: Bellek veya verileri yöneterek kullanılabilirlik ⬆️ Güvenlik işlenebilir UIApplication, AppDelegate durumu: AppDelegate nesnesinin UIApplication nesnesinden gönderilen mesajı aldığı ve her birini yürüttüğü işlevleri tanımlar Çalışmıyor: Uygulamanın çalışmadığı durum Etkin değil: Uygulamanın çalıştığı ancak hiçbir etkinliğin alınmadığı durum Etkin: Uygulamanın çalıştığı ve bir olayın meydana geldiği durum Arka Plan: Uygulamanın arka planda olduğu ancak yürütülmekte olan kodun bulunduğu durum Askıya Alındı: Uygulamanın bulunduğu durum arka plan ve kod çalıştırma, AppDelegate.swift dosyasında delege işlevleri olacak SceneDelegate iOS 13'ten itibaren desteklenen çoklu sahne işlevine iyi yanıt vermek için AppDelegate / SceneDelegate AppDelegate 1.

Related posts

SINIRSIZ HAYAT

Büyüdüğünde, dünyanın olduğu gibi olduğunu ve hayatının sadece dünyanın içinde yaşamak olduğunu, hayatını asla riske atmadan, sadece belirlenmiş bir yolu takip et ve sonunda öl ve ölmemeye çalış. duvarlara çok fazla vur. Ama bu çok sınırlı bir hayat.

Ağ TV Twitter

Ağ TV Twitter

Eski olan şimdi tekrar yeni ve eskiden ışıltılı parlak olan şey şimdi sıkıcı geliyor. 1990'ların sonundaki diğer modalarla birlikte şehir merkezindeki havalı çocuklar arasında geri dönüş yapan JNCO kot pantolonlarından bahsetmiyorum.

zamirler süper korkutucu

Çoğu zaman olduğu gibi birdenbire gözüme çarpıyor Her şey yeniden yarı yolda <Hayır, Pasifik'te kesip attığınız değil, karnavalda olan> Her manşet yüksek sesle… ..

Bir Çocuğun İlk Kafasını Yükseltme Kitabı

Bir Çocuğun İlk Kafasını Yükseltme Kitabı

(Uyarı- Bu Hiciv, Neşeyle Yıkıcı Olma Amaçlıdır- Kesinlikle çocuklar için değildir) Annenizi ve babanızı mutfakta saklanıp o kokulu sigaraları içerken gördünüz. Sana söylerler.