If כביטוי
חלק מהיחידה יסודות במסלול ה-Kotlin של Coddy. שיעור 31 מתוך 93.
ראית איך אפשר להשתמש ב־if בתוך שורה כדי לבחור בין שני ערכים. אבל כשבלוקי if-else שלך מכילים כמה פקודות, עדיין אפשר להשתמש במבנה כולו כביטוי: הביטוי האחרון בכל ענף הופך לערך המוחזר.
fun main() {
val score = 85
val message = if (score >= 60) {
val grade = "passing"
"You got a $grade score!"
} else {
val grade = "failing"
"You got a $grade score."
}
println(message) // מדפיס: קיבלת ציון עובר!
}כל ענף יכול להכיל כמה פקודות, אבל הביטוי האחרון בענף הוא זה שמוחזר ומושם במשתנה. במקרה הזה, המחרוזת בשורה האחרונה של כל בלוק הופכת לערך של message.
זה עובד גם עם שרשראות else if:
fun main() {
val temperature = 25
val description = if (temperature > 30) {
"Hot"
} else if (temperature > 20) {
"Warm"
} else {
"Cool"
}
println(description) // מדפיס: Warm
}כשמשתמשים ב־if כביטוי, ענף ה־else הוא חובה: Kotlin צריכה להבטיח שיוחזר ערך בלי קשר לתנאי שמתקיים.
אתגר
קלהמשתנה הבא נתון לך:
val hours = 45השתמש בביטוי if עם כמה פקודות בכל ענף כדי לקבוע את מצב השכר של העובד וליצור הודעה.
צור משתנה payStatus באמצעות ביטוי if:
- אם
hoursגדול מ־40:- צור משתנה
overtimeהשווה ל־hours - 40 - הביטוי האחרון צריך להיות
"Overtime: $overtime extra hours"
- צור משתנה
- אחרת:
- צור משתנה
remainingהשווה ל־40 - hours - הביטוי האחרון צריך להיות
"Regular: $remaining hours until overtime"
- צור משתנה
הדפס את הערך של payStatus.
נסו בעצמכם
fun main() {
val hours = 45
// TODO: כתבו את הקוד שלכם למטה
// צרו משתנה payStatus באמצעות ביטוי if
// אם hours > 40: צרו משתנה overtime והחזירו "Overtime: $overtime extra hours"
// אחרת: צרו משתנה remaining והחזירו "Regular: $remaining hours until overtime"
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
7קלט/פלט בסיסיים
פונקציית Printlnתבניות מחרוזתקלט באמצעות ReadLineהמרת טיפוסיםסיכום – שנים עד הפרישהסיכום – אמת או שקר10פונקציות
הכרזה על פונקציהפרמטרים וארגומנטיםערכי החזרהארגומנטים בעלי שםערכי ברירת מחדלפונקציות עם ביטוי יחידחזרה – פונקציית Sigmaחזרה – פונקציית אימות3אפשרות לערך null
מהי בטיחות מפני nullטיפוסים שיכולים להיות nullאופרטור קריאה בטוחהאופרטור אלביסיסודות אתגר הפונקציותאופרטור ההבטחה לאי־nullסיכום – גישה בטוחה9לולאות
לולאת forלולאת whileלולאת do-whilebreakcontinueטווחים בלולאותלולאה מקוננתחזרה – עצרתחזרה – קלט דינמיתרגלו בעצמכם: Kotlin אונליין