אופרטור אלביס
חלק מהיחידה יסודות במסלול ה-Kotlin של Coddy. שיעור 15 מתוך 93.
אופרטור הקריאה הבטוחה מצוין למניעת קריסות, אבל לפעמים צריך ערך ממשי במקום null. אופרטור אלביס ?: מאפשר לספק ערך ברירת מחדל כאשר ביטוי הוא null.
התחביר פשוט: מציבים ?: אחרי ביטוי שיכול להיות null, ולאחריו את ערך ברירת המחדל:
fun main() {
val name: String? = null
val displayName = name ?: "Guest"
println(displayName) // מדפיס: Guest
}אם הצד השמאלי אינו null, נעשה שימוש בערך הזה. אם הוא null, הצד הימני הופך לתוצאה. זה עובד היטב עם קריאות בטוחות:
fun main() {
val text: String? = null
val length = text?.length ?: 0
println(length) // מדפיס: 0
val greeting: String? = "Hello"
val greetingLength = greeting?.length ?: 0
println(greetingLength) // מדפיס: 5
}האופרטור קיבל את שמו משום ש־?: נראה כמו השיער של אלביס כשמסתכלים עליו מהצד. וחשוב מכך, הוא מאפשר לך להמיר טיפוסים שניתנים להכלת null לערכים שאינם יכולים להכיל null, עם ערכי ברירת מחדל הגיוניים.
אתגר
קללחבילה יש תווית מעקב אופציונלית ויעד אופציונלי. קוד הפתיחה מספק את שני הערכים כערכים שיכולים להיות null. השתמשו ב־?: כדי לבחור ב־"Pending" כאשר תווית המעקב חסרה, וב־"Unassigned" כאשר היעד חסר. הדפיסו את התווית שנבחרה, ואז את היעד שנבחר, בשורות נפרדות.
נסו בעצמכם
fun main() {
val trackingLabel: String? = null
val destination: String? = "Harbor"
// בחר והדפס את שני הערכים להצגה.
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
7קלט/פלט בסיסיים
פונקציית Printlnתבניות מחרוזתקלט באמצעות ReadLineהמרת טיפוסיםסיכום – שנים עד הפרישהסיכום – אמת או שקר10פונקציות
הכרזה על פונקציהפרמטרים וארגומנטיםערכי החזרהארגומנטים בעלי שםערכי ברירת מחדלפונקציות עם ביטוי יחידחזרה – פונקציית Sigmaחזרה – פונקציית אימות3אפשרות לערך null
מהי בטיחות מפני nullטיפוסים שיכולים להיות nullאופרטור קריאה בטוחהאופרטור אלביסיסודות אתגר הפונקציותאופרטור ההבטחה לאי־nullסיכום – גישה בטוחה9לולאות
לולאת forלולאת whileלולאת do-whilebreakcontinueטווחים בלולאותלולאה מקוננתחזרה – עצרתחזרה – קלט דינמיתרגלו בעצמכם: Kotlin אונליין