מפתחות וערכים
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Kotlin של Coddy. שיעור 7 מתוך 63.
keys מספק את המפתחות הייחודיים, ו־values מספק את הערכים, שעשויים לחזור. המירו או מיינו את המפתחות כשנדרש סדר יציב בדוח. כאן, מפתחות מחרוזת ממוינים לפי הסדר הרגיש לאותיות רישיות שנלמד עבור רשימות.
בתוך main:
val scores = mapOf("Bo" to 7, "Ada" to 7)
println(scores.keys.sorted())מיון המפתחות מציב את Ada לפני Bo, ללא תלות בסדר ההכנסה.
מיין מפתחות במפורש כשנדרש פלט אלפביתי צפוי.
אתגר
בינוניהשלימו את sortedNames עם הפרמטר stock: Map<String, Int>. החזירו את המפתחות של המפה כרשימה ממוינת. כל המפתחות הם מילים באותיות ASCII קטנות.
אלא אם צוין לעיל טווח מצומצם יותר, האוספים מכילים לכל היותר 100 איברים בכל רמה, וארגומנטים של מספרים שלמים וערכי מספרים שלמים באוספים הם בין -1000 ל-1000. טקסט שסופק לניתוח עשוי לכלול ייצוגים לא תקינים או מחוץ לטווח, כמתואר.
החזירו ערך מסוג List<String>. השאירו את קוד הקלט/פלט שסופק. הוא קורא ארגומנטים סקלריים, אחד בכל שורה; רשימה מתחילה במספר האיברים שלה ואחריו האיברים, ומפה מתחילה במספר הרשומות שלה ואחריו כל מפתח וערך. רשימות מקוננות חוזרות על הפורמט של מספר האיברים והאיברים עבור כל שורה. ה-main שסופקה מדפיסה את הערך המוחזר ואחריו תו newline אחד. רשימות משתמשות בפורמט הסוגריים המרובעים הסטנדרטי של Kotlin; אל תדפיסו תוויות נוספות.
נסו בעצמכם
fun sortedNames(stock: Map<String, Int>): List<String> {
// כתבו כאן את הפתרון שלכם.
return emptyList()
}
fun main() {
val stockCount = readln().toInt()
val stock = mutableMapOf<String, Int>()
for (i0 in 0 until stockCount) {
val stockKey = readln()
val stockValue = readln().toInt()
stock[stockKey] = stockValue
}
println(sortedNames(stock))
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
4אוספים מקוננים
רשימות של רשימותמעבר על שורותסיכומים של שורותהשטחת רשימות מקוננותסיכום – שורות של מקומות ישיבה7צינורות עיבוד של אוספים
טרנספורמציה באמצעות Mapסינון ערכיםבדיקת כללי האוסףצבירה באמצעות Foldסיכום – סכומים מאושרים5פרויקט - ספר טלפונים
שמירת אנשי קשרחיפוש אנשי קשרתרגלו בעצמכם: Kotlin אונליין