איטרציה על איברים
חלק מהיחידה יסודות במסלול ה-Swift של Coddy. שיעור 69 מתוך 86.
עכשיו, כשאתם יודעים ליצור ולשנות מערכים, בואו נבדוק איך לעבד כל איבר בנפרד, אחד אחרי השני. לולאת for-in הופכת את זה לפשוט להפליא.
כשמשתמשים בלולאת for-in עם מערך, Swift נותנת לך אוטומטית כל איבר לפי הסדר:
let fruits = ["Apple", "Banana", "Cherry"]
for fruit in fruits {
print(fruit)
}
// Apple
// Banana
// Cherryהמשתנה fruit מקבל בכל איטרציה ערך מתוך המערך. אפשר לתת למשתנה הזה כל שם שמתאים לנתונים שלך.
התבנית הזו מושלמת לביצוע פעולות על כל איבר, כמו חישוב סכום כולל:
let prices = [9.75, 14.50, 3.25]
var total = 0.0
for price in prices {
total += price
}
print(total) // 27.5אפשר גם להשתמש בלולאה כדי לבנות מערכים חדשים על סמך מערכים קיימים:
let numbers = [1, 2, 3, 4]
var doubled = [Int]()
for number in numbers {
doubled.append(number * 2)
}
print(doubled) // [2, 4, 6, 8]מעבר על מערכים הוא אחת הפעולות הנפוצות ביותר בתכנות, ולכן שליטה בתבנית הזאת תועיל לך מאוד.
אתגר
קלכתבו פונקציה countPositives שמקבלת את numbers ומחזירה את מספר המספרים החיוביים במערך.
השתמשו בלולאת for-in כדי לעבור על כל איבר ולספור כמה מהם גדולים מאפס.
פרמטרים:
numbers([Int]): מערך של מספרים שלמים
ערך מוחזר: מספר המספרים החיוביים (הגדולים מ־0) במערך (Int)
דוגמה: אם numbers הוא [-3, 5, 0, 8, -1, 12], הפונקציה אמורה להחזיר 3 (המספרים החיוביים הם 5, 8 ו־12).
נסו בעצמכם
func countPositives(numbers: [Int]) -> Int {
// כתבו כאן קוד
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
7קלט/פלט בסיסי
פונקציית ההדפסהאינטרפולציה של מחרוזותקלט באמצעות ReadLineהמרת טיפוסיםחזרה – עד 120חזרה – אמת או שקר3ערכים אופציונליים
מהם ערכים אופציונלייםשליפת ערך באמצעות If LetGuard Letאופרטור איחוד עם Nilסיכום – שליפה בטוחה של ערך9לולאות
לולאת For-Inלולאת Whileלולאת Repeat-WhileBreakContinueחזרה – עצרתטווחים בלולאותלולאה מקוננתחזרה – קלט דינמיתרגלו בעצמכם: Swift אונליין