ReadLine-Eingabe
Teil des Abschnitts Grundlagen der Swift-Journey von Coddy. Lektion 33 von 86.
Bisher haben deine Programme fest eingebaute Werte verwendet. Damit Programme interaktiv werden, musst du Eingaben vom Benutzer entgegennehmen. In Swift liest die Funktion readLine() eine Textzeile von der Standardeingabe.
let input = readLine()
print(input)Hier gibt es ein wichtiges Detail: readLine() gibt einen optionalen String (String?) zurück, keinen regulären String. Das liegt daran, dass möglicherweise keine Eingabe mehr zum Lesen vorhanden ist; in diesem Fall gibt readLine() nil zurück. Bei einer leeren Zeile gibt sie den leeren String "" zurück, nicht nil. Du musst den Wert sicher entpacken, bevor du ihn verwendest:
if let name = readLine() {
print("Hello, \(name)!")
}Mit if let stellst du sicher, dass du nur dann mit der Eingabe arbeitest, wenn readLine() einen Wert statt nil zurückgegeben hat. Dieses Muster, Eingaben einzulesen und sicher auszupacken, wirst du beim Erstellen interaktiver Programme häufig verwenden.
Aufgabe
EinfachSchreibe eine Funktion greetUser, die name entgegennimmt und eine personalisierte Begrüßung zurückgibt.
Die Funktion simuliert, was du tun würdest, nachdem du eine Eingabe sicher aus readLine() entpackt hast. Erstelle anhand eines Namens eine Begrüßungszeichenfolge und gib sie zurück.
Parameter:
name(String): Der Name des Benutzers
Rückgabe: Eine Begrüßung im Format: Hello, [name]!
Probier es selbst
func greetUser(name: String) -> String {
// Schreibe hier Code
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorZusammengesetzte ZuweisungRückblick – Einfache MathematikVergleichsoperatoren7Grundlagen der Ein- und Ausgabe
Print-FunktionString-InterpolationReadLine-EingabeTypkonvertierungWiederholung – Bis 120Wiederholung – Wahr oder falsch10Funktionen
Eine Funktion deklarierenParameter und ArgumenteRückgabewerteArgumentbezeichnungenWiederholung – Sigma-FunktionWiederholung – ValidierungsfunktionStandardwerte13Über Sequenzen iterieren
Über Elemente iterierenDie Enumerate-MethodeÜber Strings iterieren Teil 1Über Strings iterieren Teil 22Variablen
let vs. varTypannotationenZahlenStringBooleanNamenskonventionenRückblick – Variablen initialisieren5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Zusammenfassung – Einfache LogikLogische Operatoren Teil 3Ternärer Operator8Rechner zum Teilen der Rechnung
WillkommensnachrichtEingaben erfassen11FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Funktion14Arrays – Fortgeschritten
Array-Slicing Teil 1Array-Slicing Teil 2SequenzoperatorenDie Contains-Methode3Optionals
Was sind Optionals?Entpacken mit If LetGuard LetNil-Coalescing-OperatorZusammenfassung – Sicheres Entpacken6Entscheidungen treffen
If-AnweisungIf - ElseRückblick – Einfacher TaschenrechnerSwitch-AnweisungSwitch mit Bereichen9Schleifen
For-In-SchleifeWhile-SchleifeRepeat-While-SchleifeBreakContinueZusammenfassung – FakultätBereiche in SchleifenVerschachtelte SchleifeZusammenfassung – Dynamische EingabeÜbe selbstständig: Swift-Playground