Menu
Coddy logo textTech

אופרטור מודע ל-null

חלק מהיחידה יסודות במסלול ה-Dart של Coddy. שיעור 28 מתוך 94.

האופרטור המודע לערכי null (??) מחזיר את הביטוי השמאלי אם הוא אינו null, אחרת מחזיר את הביטוי הימני.

void main() {
  String? name = 'Dart';
  String displayName = name ?? 'Guest';
  
  print('Hello, $displayName!');
}
void main() {
  String? name = null;
  String displayName = name ?? 'Guest';
  
  print('Hello, $displayName!');
}
void main() {
  int? score;  // ללא ערך התחלתי, ברירת המחדל היא null
  int displayScore = score ?? 0;
  
  print('Your score: $displayScore');
  
  // בהמשך התוכנית, score מקבל ערך
  score = 100;
  displayScore = score ?? 0;
  
  print('Your updated score: $displayScore');
}
challenge icon

אתגר

קל

צרו תוכנית שמדגימה את האופרטור שמודע לערכי null (??) ב-Dart:

  1. הכריזו על משתנה String שיכול להיות null בשם username והגדירו את ערכו ל-null
  2. הכריזו על משתנה int שיכול להיות null בשם userAge והגדירו את ערכו ל-null
  3. השתמשו באופרטור שמודע לערכי null כדי להקצות את ערך ברירת המחדל "Guest" למשתנה חדש displayName אם username הוא null
  4. השתמשו באופרטור שמודע לערכי null כדי להקצות את ערך ברירת המחדל 18 למשתנה חדש displayAge אם userAge הוא null
  5. הדפיסו את הערכים בפורמט המדויק הבא:
Username: Guest (default value used)
Age: 18 (default value used)

לאחר מכן:

  1. עדכנו את username ל-"DartUser"
  2. עדכנו את userAge ל-25
  3. חזרו על שלבים 3 ו-4 עם הערכים המעודכנים
  4. הדפיסו את הערכים בפורמט המדויק הבא:
Username: DartUser (original value used)
Age: 25 (original value used)

נסו בעצמכם

void main() {
  // הצהר על משתנים שיכולים להכיל null
  String? username = _;
  int? userAge = _;
  
  // השתמש באופרטור המתחשב ב-null עבור ערכי ברירת מחדל
  String displayName = username ?? _;
  int displayAge = userAge ?? _;
  
  // הדפס ערכים התחלתיים
  print("Username: $displayName (default value used)");
  print("Age: $displayAge (default value used)");
  
  // עדכן את המשתנים
  username = _;
  userAge = _;
  
  // השתמש שוב באופרטור המתחשב ב-null
  displayName = username _ "Guest";
  displayAge = userAge _ 18;
  
  // הדפס את הערכים המעודכנים
  print("Username: $displayName (original value used)");
  print("Age: $displayAge (original value used)");
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר Dart אונליין