איטרציה על איברים
חלק מהיחידה יסודות במסלול ה-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.99, 14.50, 3.25]
var total = 0.0
for price in prices {
total += price
}
print(total) // 27.74אפשר גם להשתמש בלולאה כדי לבנות מערכים חדשים על סמך מערכים קיימים:
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 אונליין