איטרציה על מחרוזות חלק 1
חלק מהיחידה יסודות במסלול ה-Kotlin של Coddy. שיעור 76 מתוך 93.
בדומה לרשימות, אפשר לעבור על מחרוזות תו אחר תו באמצעות לולאת for. ב-Kotlin, מחרוזת היא למעשה רצף של תווים, ולכן אותה תבנית איטרציה חלה גם כאן.
val word = "Hello"
for (char in word) {
println(char)
}
// פלט:
// H
// e
// l
// l
// oבכל איטרציה מתקבלת תו יחיד מסוג Char מתוך המחרוזת. זה שימושי כשצריך לבדוק או לעבד כל תו בנפרד, למשל כדי לספור אותיות מסוימות או לבנות מחרוזת חדשה על סמך תנאים מסוימים.
val text = "Kotlin"
var count = 0
for (char in text) {
if (char == 'o' || char == 'i') {
count++
}
}
println(count) // 2אפשר גם להשתמש ב־withIndex() על מחרוזות כדי לקבל גם את המיקום וגם את התו, בדיוק כמו ברשימות:
val name = "Ada"
for ((index, char) in name.withIndex()) {
println("$index: $char")
}
// פלט:
// 0: A
// 1: d
// 2: aאתגר
בינוניקראו מחרוזת מהקלט וספרו כמה תנועות (a, e, i, o, u) היא מכילה. התייחסו לתנועות קטנות וגדולות כאחד.
עברו על כל תו במחרוזת ובדקו אם הוא תנועה. הדפיסו את המספר הכולל של התנועות שנמצאו.
פורמט הקלט:
- מחרוזת אחת
פורמט הפלט:
הדפיסו מספר שלם יחיד המייצג את מספר התנועות במחרוזת.
רמז: אפשר להמיר כל תו לאות קטנה באמצעות lowercaseChar() לפני הבדיקה, או לבדוק את שני המקרים בנפרד.
נסו בעצמכם
fun main() {
// קראו את הקלט
val text = readLine()!!
// TODO: כתבו את הקוד שלכם למטה כדי לספור את אותיות התנועה במחרוזת
// הדפיסו את התוצאה
println(count)
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
7קלט/פלט בסיסיים
פונקציית Printlnתבניות מחרוזתקלט באמצעות ReadLineהמרת טיפוסיםסיכום – שנים עד הפרישהסיכום – אמת או שקר10פונקציות
הכרזה על פונקציהפרמטרים וארגומנטיםערכי החזרהארגומנטים בעלי שםערכי ברירת מחדלפונקציות עם ביטוי יחידחזרה – פונקציית Sigmaחזרה – פונקציית אימות13איטרציה על רצפים
איטרציה על איבריםמתודת WithIndexאיטרציה על מחרוזות חלק 1איטרציה על מחרוזות חלק 2סיכום - אותיות עם אינדקסים3אפשרות לערך null
מהי בטיחות מפני nullטיפוסים שיכולים להיות nullאופרטור קריאה בטוחהאופרטור אלביסיסודות אתגר הפונקציותאופרטור ההבטחה לאי־nullסיכום – גישה בטוחה9לולאות
לולאת forלולאת whileלולאת do-whilebreakcontinueטווחים בלולאותלולאה מקוננתחזרה – עצרתחזרה – קלט דינמיתרגלו בעצמכם: Kotlin אונליין