Null-bilinçli Erişim
Coddy'nin Dart Journey'sinin Temeller bölümünün bir parçası — ders 29 / 94.
Null-farkında erişim operatörü (?.), potansiyel olarak null nesneler üzerinde özelliklere güvenli bir şekilde erişim sağlar ve çalışma zamanı hatalarını önler.
void main() {
String? name = 'Dart';
int? length = name?.length;
print('Name: $name');
print('Length: $length');
}Null değerlerle, çökmek yerine null döndürür:
void main() {
String? name = null;
int? length = name?.length;
print('Name: $name');
print('Length: $length');
}Görev
KolayBir oyun karakteri ile null-aware erişim operatörünü (?.) gösteren bir Dart programı oluşturun:
playerNameadında nullable bir String değişkeni oluşturun ve null olarak ayarlayınplayerScoreadında nullable bir int değişkeni oluşturun ve 100 olarak ayarlayın- Null-aware erişim operatörünü (
?.) kullanarak playerName'in uzunluğunu alın venameLengthadında bir değişkende saklayın - Aşağıdaki mesajı yazdırın:
Player name length: X(burada X, nameLength'in değeridir) playerName'i "Champion" olarak güncelleyin- Null-aware erişim operatörünü tekrar kullanarak güncellenmiş uzunluğu alın ve
nameLength'e saklayın - Güncellenmiş mesajı yazdırın:
Player name length: X(burada X yeni değerdir) - Oyuncunun skorunu bu formatta yazdırın:
Player score: 100
Kopya kağıdı
Null-farkında erişim operatörü (?.), potansiyel olarak null nesneler üzerinde özellikleri güvenli bir şekilde erişir ve çalışma zamanı hatalarını önler.
Nesne null olmadığında, özellik değerini döndürür:
String? name = 'Dart';
int? length = name?.length; // 4 döndürürNesne null olduğunda, çökme yerine null döndürür:
String? name = null;
int? length = name?.length; // null döndürürKendin dene
void main() {
// Nullable değişkenlerinizi burada bildirin
String? playerName = _;
int? playerScore = _;
// playerName'in uzunluğunu ?. operatörü kullanarak alın
int? nameLength = playerName_.length;
// İlk isim uzunluğunu yazdırın
print("Player name length: ${nameLength}");
// playerName'i güncelleyin
playerName = _;
// Güncellenmiş uzunluğu ?. operatörü kullanarak alın
nameLength = playerName_.length;
// Güncellenmiş isim uzunluğunu yazdırın
print("Player name length: ${nameLength}");
// Oyuncunun skorunu yazdırın
print("Player score: ${playerScore}");
}Bu 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 2
Karşılaştırma OperatörleriMantıksal VEMantıksal VEYAMantıksal DEĞİLTür Test OperatörleriÖzet - Karşılaştırmalar Yapma7Dizelerle Çalışma
Dize BirleştirmeDize İnterpolasyonuÇok Satırlı DizelerDize ÖzellikleriTemel Dize Yöntemleri10Koleksiyonlar - Haritalar Temelleri
Haritalar Nedir?Harita OluşturmaAnahtara Göre Değerlere ErişimAnahtar-Değer ÇiftleriHarita Boyutunu AlmaAnahtarları AlmaDeğerleri AlmaBir Anahtarın Varlığını Kontrol Etme2Değişkenler ve Temel Veri Tipleri
Değişkenler Nedir?DizgelerTamsayılar (int)Ondalık Sayılar (double)Boole Değerleri (bool)'var' ile Tür ÇıkarımıFinal DeğişkenlerSabit Değişkenlerİsimlendirme KurallarıTemel Null GüvenliğiÖzet - Değişken Bildirimi8Akış Kontrolü - Döngüler
'for' Döngüsü'while' Döngüsü'do-while' DöngüsüDöngülerde 'break' KullanımıDöngülerde 'continue' KullanımıÖzet - Kodu Tekrarlama3Operatörler Kısım 1
Aritmetik OperatörlerTamsayı BölümüModulo OperatörüArtırma ve AzaltmaAtama KısayollarıÖzet - Basit Hesaplamalar6Akış Kontrolü - Karar Verme
'if' İfadesi'else' İfadesi'else if' İfadesiÖzet - Basit Kararlarİç İçe 'if' İfadeleri'switch' İfadesi9Koleksiyonlar - Liste Temelleri
Listeler Nedir?Liste Oluşturmaİndekse Göre ErişimListe Uzunluğunu AlmaEleman EklemeEleman KaldırmaListenın Boş Olup Olmadığını Kontrol EtmeListe Üzerinde Yineleme12Gelişmiş Fonksiyonlar
İsteğe Bağlı Konumsal Parametrelerİsimli ParametrelerZorunlu İsimli ParametrelerVarsayılan Parametre DeğerleriÖzet - Fonksiyon Parametreleri15Proje: Basit Hesap Makinesi
Kurulumu YapmaSayı Tanımlama