קלט באמצעות ReadLine
חלק מהיחידה יסודות במסלול ה-Swift של Coddy. שיעור 33 מתוך 86.
עד עכשיו, התוכניות שלך השתמשו בערכים שהוגדרו מראש בקוד. כדי להפוך תוכניות לאינטראקטיביות, עליך לקבל קלט מהמשתמש. ב-Swift, הפונקציה readLine() קוראת שורת טקסט מהקלט הסטנדרטי.
let input = readLine()
print(input)יש כאן פרט חשוב: readLine() מחזירה מחרוזת אופציונלית (String?), ולא מחרוזת רגילה. הסיבה לכך היא שייתכן שלא נותר קלט לקריאה, ובמקרה כזה readLine() מחזירה nil. עבור שורה ריקה היא מחזירה את המחרוזת הריקה "", ולא את nil. תצטרך לחלץ את הערך באופן בטוח לפני השימוש בו:
if let name = readLine() {
print("Hello, \(name)!")
}השימוש ב־if let מבטיח שתעבוד עם הקלט רק כאשר readLine() החזירה ערך ולא nil. דפוס זה של קריאת קלט וחילוץ בטוח של הערך הוא משהו שתשתמש בו לעיתים קרובות כשתבנה תוכניות אינטראקטיביות.
אתגר
קלכתוב פונקציה בשם greetUser שמקבלת את name ומחזירה הודעת ברכה אישית.
הפונקציה מדמה את מה שהיית עושה לאחר חילוץ בטוח של הקלט מ־readLine(). בהינתן שם, בנה והחזר מחרוזת ברכה.
פרמטרים:
name(String): שם המשתמש
ערך מוחזר: ברכה בתבנית: Hello, [name]!
נסו בעצמכם
func greetUser(name: String) -> String {
// כתבו כאן את הקוד
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
7קלט/פלט בסיסי
פונקציית ההדפסהאינטרפולציה של מחרוזותקלט באמצעות ReadLineהמרת טיפוסיםחזרה – עד 120חזרה – אמת או שקר3ערכים אופציונליים
מהם ערכים אופציונלייםשליפת ערך באמצעות If LetGuard Letאופרטור איחוד עם Nilסיכום – שליפה בטוחה של ערך9לולאות
לולאת For-Inלולאת Whileלולאת Repeat-WhileBreakContinueחזרה – עצרתטווחים בלולאותלולאה מקוננתחזרה – קלט דינמיתרגלו בעצמכם: Swift אונליין