ניתוח ללא חריגות
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Kotlin של Coddy. שיעור 51 מתוך 63.
toIntOrNull מחזירה Int עבור מחרוזת של מספר שלם תקינה ובטווח, ו-null כאשר הפענוח נכשל, כולל במקרה של גלישה. שלבו אותה עם הסתעפות בטוחה או עם ערך חלופי של Elvis. הסרת רווחים היא בחירה נפרדת: הסירו רווחים במפורש אם רוצים לאפשר רווחים מסביב.
בתוך main:
println(" 24 ".trim().toIntOrNull() ?: -1)הסרת הרווחים מסביב מאפשרת להמרה להצליח.
toIntOrNull מדווח על טקסט של מספר שלם לא תקין או מחוץ לטווח בתור null.
אתגר
בינוניהשלם את parseOrMissing עם הפרמטרים text: String. הסר רווחים מתחילת הטקסט ומסופו ונסה לפרש אותו כ-Int. החזר -1 אם הפענוח נכשל או אם הערך מחוץ לטווח של Int.
אלא אם צוין לעיל טווח מצומצם יותר, אוספים מכילים לכל היותר 100 איברים בכל רמה, וארגומנטים שלמים וערכים שלמים באוספים הם בין -1000 ל-1000. הטקסט שסופק לפענוח יכול לכלול ייצוגים לא תקינים או מחוץ לטווח, כמתואר.
החזר ערך מסוג Int. השאר את קוד הקלט/פלט שסופק. הוא קורא ארגומנטים סקלריים, אחד בכל שורה; רשימה מתחילה במספר האיברים שלה ואחריו האיברים, ומפה מתחילה במספר הרשומות שלה ואחריו כל מפתח וערך. רשימות מקוננות חוזרות על תבנית מספר האיברים והאיברים עבור כל שורה. ה-main שסופקה מדפיסה את הערך המוחזר ואחריו תו שורה חדשה אחד. רשימות משתמשות בפורמט הסוגריים המרובעים התקני של Kotlin; אל תדפיס תוויות נוספות.
נסו בעצמכם
fun parseOrMissing(text: String): Int {
// כתבו כאן את הפתרון שלכם.
return 0
}
fun main() {
val text = readLine().orEmpty()
println(parseOrMissing(text))
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
4אוספים מקוננים
רשימות של רשימותמעבר על שורותסיכומים של שורותהשטחת רשימות מקוננותסיכום – שורות של מקומות ישיבה7צינורות עיבוד של אוספים
טרנספורמציה באמצעות Mapסינון ערכיםבדיקת כללי האוסףצבירה באמצעות Foldסיכום – סכומים מאושרים5פרויקט - ספר טלפונים
שמירת אנשי קשרחיפוש אנשי קשר11טיפול בשגיאות
ניתוח ללא חריגותלכידת שגיאות ספציפיותTry כביטויאימות באמצעות Requireסיכום – כמויות מאומתותתרגלו בעצמכם: Kotlin אונליין