Contains Metodu
Coddy'nin Swift Journey'sinin Temeller bölümünün bir parçası — ders 76 / 86.
Dizilerle çalışırken, bir eylemi gerçekleştirmeden önce genellikle belirli bir değerin var olup olmadığını kontrol etmeniz gerekir. Swift, tam olarak bu amaç için contains() metodunu sağlar—eleman bulunursa true, aksi takdirde false döndürür.
let fruits = ["apple", "banana", "orange"]
if fruits.contains("banana") {
print("We have bananas!")
}
// Muzumuz var!Bu, diziyi manuel olarak taramak için bir döngü yazmaktan çok daha temizdir. Bu yöntem, ister dize, ister sayı, ister başka değerler içersin, her türlü diziyle çalışır:
let numbers = [10, 20, 30, 40, 50]
print(numbers.contains(30)) // doğru
print(numbers.contains(99)) // yanlışYaygın bir kullanım durumu, kullanıcı girişini izin verilen değerler listesine karşı doğrulamaktır:
let validOptions = ["yes", "no", "maybe"]
let userInput = "yes"
if validOptions.contains(userInput) {
print("Valid choice")
} else {
print("Invalid choice")
}
// Geçerli seçimcontains() metodu, bir alt dizginin daha büyük bir dizgi içinde olup olmadığını kontrol etmek için dizgilerle de çalışır:
let message = "Hello, Swift!"
print(message.contains("Swift")) // trueGörev
Kolayİki satır girdi alacaksınız:
- Virgülle ayrılmış izin verilen kullanıcı adları listesi (örneğin,
admin,user,guest,moderator) - Kontrol edilecek bir kullanıcı adı
Kullanıcı adının izin verilenler listesinde olup olmadığını kontrol edin. Eğer varsa, Access granted yazdırın. Yoksa, Access denied yazdırın.
Adımlar:
- Virgülle ayrılmış listeyi okuyun ve bir dize dizisine (array of strings) bölün
- Kontrol edilecek kullanıcı adını okuyun
- Kullanıcı adının izin verilenler listesinde olup olmadığını belirlemek için
contains()metodunu kullanın - Sonuca göre uygun mesajı yazdırın
İpucu: Bir dizeyi bir diziye bölmek için components(separatedBy:) kullanın. Örneğin:
let text = "a,b,c"
let parts = text.components(separatedBy: ",")Kopya kağıdı
contains() yöntemi, bir dizide belirli bir değerin olup olmadığını kontrol eder; bulunursa true, aksi takdirde false döndürür:
let fruits = ["apple", "banana", "orange"]
if fruits.contains("banana") {
print("We have bananas!")
}
// Muzlarımız var!Herhangi bir dizi türüyle çalışır:
let numbers = [10, 20, 30, 40, 50]
print(numbers.contains(30)) // true
print(numbers.contains(99)) // falseGirdiyi doğrulamak için yaygın kullanım durumu:
let validOptions = ["yes", "no", "maybe"]
let userInput = "yes"
if validOptions.contains(userInput) {
print("Valid choice")
} else {
print("Invalid choice")
}
// Geçerli seçimcontains() yöntemi, alt dizeleri kontrol etmek için dizelerle de çalışır:
let message = "Hello, Swift!"
print(message.contains("Swift")) // trueBir dizeyi bir diziye bölmek için components(separatedBy:) kullanın:
let text = "a,b,c"
let parts = text.components(separatedBy: ",")Kendin dene
// İzin verilen kullanıcı adlarının virgülle ayrılmış listesini oku
let allowedList = readLine()!
// Kontrol edilecek kullanıcı adını oku
let username = readLine()!
// YAPILACAK: Kodunuzu aşağıya yazın
// 1. components(separatedBy:) kullanarak allowedList'i bir diziye bölün
// 2. Kullanıcı adının dizide olup olmadığını kontrol etmek için contains() kullanın
// 3. Sonuca göre "Access granted" veya "Access denied" yazdırınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerModül OperatörüBileşik AtamaÖzet - Basit MatematikKarşılaştırma Operatörleri7Temel Giriş/Çıkış
Print FonksiyonuString InterpolationReadLine GirişiTür DönüşümüÖzet - 120'ye KadarÖzet - Doğru veya Yanlış10Fonksiyonlar
Fonksiyon TanımlamaParametreler ve ArgümanlarDönüş DeğerleriArgüman EtiketleriÖzet - Sigma FonksiyonuÖzet - Doğrulama FonksiyonuVarsayılan Değerler13Diziler Üzerinde Yineleme
Elemanlar Üzerinde YinelemeEnumerate MetoduStringler Üzerinde Yineleme P1Stringler Üzerinde Yineleme P22Değişkenler
Let vs VarTip BelirteçleriSayılarStringBooleanİsimlendirme KurallarıÖzet - Değişkenleri Başlatma5Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 3Ternary Operatör8Hesap Paylaşım Hesaplayıcısı
Hoş Geldiniz MesajıGirdi Alma14İleri Seviye Diziler
Dizi Dilimleme Bölüm 1Dizi Dilimleme Bölüm 2Sıralı Yapı OperatörleriContains Metodu3Opsiyoneller
Opsiyoneller NedirIf Let ile UnwrappingGuard LetNil Coalescing OperatörüÖzet - Güvenli Unwrapping6Karar Yapıları
If İfadesiIf - ElseÖzet - Basit Hesap MakinesiSwitch İfadesiAralıklı Switch Kullanımı9Döngüler
For-In DöngüsüWhile DöngüsüRepeat-While DöngüsüBreakContinueÖzet - FaktöriyelDöngülerde Aralıklarİç İçe DöngülerÖzet - Dinamik Girdi