אופרטור מודע ל-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');
}אתגר
קלצרו תוכנית שמדגימה את האופרטור שמודע לערכי null (??) ב-Dart:
- הכריזו על משתנה String שיכול להיות null בשם
usernameוהגדירו את ערכו ל-null - הכריזו על משתנה int שיכול להיות null בשם
userAgeוהגדירו את ערכו ל-null - השתמשו באופרטור שמודע לערכי null כדי להקצות את ערך ברירת המחדל
"Guest"למשתנה חדשdisplayNameאםusernameהוא null - השתמשו באופרטור שמודע לערכי null כדי להקצות את ערך ברירת המחדל
18למשתנה חדשdisplayAgeאםuserAgeהוא null - הדפיסו את הערכים בפורמט המדויק הבא:
Username: Guest (default value used)
Age: 18 (default value used)לאחר מכן:
- עדכנו את
usernameל-"DartUser" - עדכנו את
userAgeל-25 - חזרו על שלבים 3 ו-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)");
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
7עבודה עם מחרוזות
שרשור מחרוזותאינטרפולציה של מחרוזותמחרוזות מרובות שורותמאפייני מחרוזותשיטות בסיסיות למחרוזות10אוספים - יסודות המפות
מהן מפות?יצירת מפהגישה לערכים לפי מפתחזוגות מפתח-ערךקבלת גודל המפהקבלת המפתחותקבלת הערכיםבדיקה אם מפתח קיים2משתנים וטיפוסי נתונים בסיסיים
מהם משתנים?מחרוזותמספרים שלמים (int)מספרים מסוג double (double)ערכים בוליאניים (bool)הסקת טיפוס באמצעות 'var'משתנים סופייםמשתנים קבועיםמוסכמות למתן שמותבטיחות בסיסית מול nullסיכום – הכרזה על משתנים8זרימת בקרה – לולאות
לולאת 'for'לולאת 'while'לולאת 'do-while'שימוש ב-'break' בלולאותשימוש ב-'continue' בלולאותסיכום – חזרה על קוד3אופרטורים חלק 1
אופרטורים אריתמטייםחלוקת מספרים שלמיםאופרטור מודולוהגדלה והקטנהקיצורי השמהסיכום - חישובים פשוטים6זרימת בקרה - קבלת החלטות
הוראת 'if'הוראת 'else'הוראת 'else if'חזרה - החלטות פשוטותהוראות 'if' מקוננותהוראת 'switch'9אוספים - יסודות הרשימות
מהן רשימות?יצירת רשימהגישה לפי אינדקסקבלת אורך הרשימההוספת איבריםהסרת איבריםבדיקה אם הרשימה ריקהמעבר על רשימהתרגלו בעצמכם: קומפיילר Dart אונליין