In diesem Tutorial lernen Sie die Verwendung von Zeichen und Zeichenfolgen in Swift kennen. Sie lernen auch verschiedene Operationen kennen, die an Zeichenfolgen und Zeichen ausgeführt werden können.
Was ist ein Charakter?
Ein Zeichen ist ein einzelnes Symbol (Buchstabe, Zahl usw.). Zeichen in Swift sind vom Character
Typ und werden deklariert als:
let someCharacter: Character
Wie deklariere und ordne ich einen Charakter in Swift zu?
Sie können einen Wert im Zeichentyp wie String mit doppelten Anführungszeichen zuweisen " "
, dieser sollte jedoch nur ein einziges Zeichen in Anführungszeichen enthalten " "
.
Wenn Sie mehr als ein Zeichen einfügen müssen, müssen Sie es String
anstelle von definieren Character
.
Beispiel 1: Deklarieren und Zuweisen eines Zeichens
let someCharacter:Character = “H” let specialCharacter:Character = “@” print(someCharacter) print(specialCharacter)
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
H @
Beispiel 2: Zuweisen von mehr als einem Zeichen (funktioniert nicht)
Wenn Sie jedoch versuchen, zwei Symbole innerhalb des Zeichens als zuzuweisen
/* This will give an error Changing the type to String will fix it. */ let failableCharacter:Character = "H@" print(failableCharacter)
Wenn Sie versuchen, den obigen Code auszuführen, wird folgende Fehlermeldung angezeigt:
Wert vom Typ String kann nicht in Zeichen konvertiert werden.
Erstellen von Zeichen mithilfe von Unicode und Escape-Sequenz
Sie können auch spezielle Zeichentypen für.eg-Emoji mithilfe von Unicodes erstellen. Sie können einen Unicode mit der Escape-Sequenz u (n) erstellen (Unicode-Codepunkt, n ist hexadezimal).
Beispiel 3: Erstellen eines Unicode-Zeichens
let heartShape:Character = "u(2665)" print(heartShape)
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
♥
Im obigen Beispiel wurde ein Herzformzeichen aus Code erstellt U+2665
. Obwohl u(2665)
in doppelten Anführungszeichen enthalten, behandelt der Compiler dies nicht als, String
da wir die Escape-Sequenz verwendet haben u(n)
. Eine Escape-Sequenz stellt sich nicht selbst dar, wenn sie im Literal enthalten ist.
Was ist ein String?
Eine Zeichenfolge ist einfach eine Sammlung von Zeichen. Strings in Swift sind vom String
Typ und deklariert als:
let someString: String
Wie deklariere und ordne ich einen String in Swift zu?
Sie können den Wert im Zeichenfolgentyp mithilfe von Zeichenfolgenliteralen zuweisen. Ein String-Literal ist eine Sammlung von Zeichen, die in doppelte Anführungszeichen gesetzt sind " "
.
Beispiel 4: Deklarieren und Zuweisen einer Zeichenfolge
let someString:String = "Hello, world!" let someMessage = "I love Swift." print(someString) print(someMessage)
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
Hallo Welt! Ich liebe Swift.
Hier sind beide "Hello, world!"
und "I love Swift."
Zeichenfolgenliterale, die zum Erstellen von Zeichenfolgenvariablen someString bzw. someMessage verwendet werden.
Operationen an einer Zeichenfolge
In String sind einige Funktionen und Eigenschaften integriert, die sich mit den am häufigsten verwendeten Operationen befassen. Beispiel: Um Zeichenfolgen zu verbinden, ändern Sie sie in Großbuchstaben oder schreiben Sie sie in Großbuchstaben. Lassen Sie uns im Folgenden einige häufig verwendete Operationen untersuchen:
Zeichenfolgenvergleich
Mit dem Vergleichsoperator können Sie einfach überprüfen, ob zwei Zeichenfolgen gleich sind oder nicht (==)
. Der Operator gibt Rückgaben zurück, true
wenn beide Zeichenfolgen gleich sind, andernfalls gibt er zurück false
.
Beispiel 5: Stringvergleich in Swift
let someString = "Hello, world!" let someMessage = "I love Swift." let someAnotherMessage = "Hello, world!" print(someString == someMessage) print(someString == someAnotherMessage)
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
Falsch Richtig
String-Verkettung
Zwei verschiedene Zeichenfolgenwerte können zusammen mit dem Additionsoperator (+)
oder mithilfe des zusammengesetzten Zuweisungsoperators addiert werden (+=)
. Sie können ein Zeichen / eine Zeichenfolge auch mithilfe der append
Methode an eine Zeichenfolge anhängen .
Beispiel 6: String-Verkettung in Swift
let helloStr = "Hello, " let worldStr = "World" var result = helloStr + worldStr print(result) result.append("!") print(result)
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
Hallo Welt Hallo, Welt!
Im obigen Programm haben wir ein String- Ergebnis erstellt, indem wir helloStr und worldStr mit dem Operator + angehängt haben. Also, print(result)
gibt Hallo, Welt auf dem Bildschirm aus.
Sie können auch ein beliebiges Zeichen oder eine beliebige Zeichenfolge mithilfe der append
Methode anhängen . result.append("!")
Hängt ein !
Zeichen am Ende der Zeichenfolge an. Also, print(result)
Ausgaben Hallo, Welt! auf dem Bildschirm.
Zeichenfolgenverkettung mit dem erweiterten Zuweisungsoperator
Wir können auch den erweiterten Zuweisungsoperator (+ =) verwenden, um eine Zeichenfolge anzuhängen.
Beispiel 7: String-Verkettung mit dem Operator + =
var helloStr = "Hello, " let worldStr = "World!" helloStr += worldStr print(helloStr)
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
Hallo Welt!
Beachten Sie die Verwendung von var anstelle von helloStr. Wenn Sie helloStr mit let als Konstante definiert haben, können Sie sie später nicht mit dem +=
Operator ändern und erhalten schließlich eine Fehlermeldung. Sie müssen also helloStr als Variable definieren.
String-Interpolation
Es ist ein einfacher Prozess zum Auswerten eines Zeichenfolgenliteral, das aus Variablen, Konstanten usw. besteht. Stellen Sie sich vor, Sie haben den Namen und die Punktzahl des Spielers in zwei Konstanten gespeichert:
let playerName = "Jack" let playerScore = 99
Jetzt müssen Sie dem Spieler eine Nachricht mit dem Titel "Herzlichen Glückwunsch, Jack!" Anzeigen. Ihre höchste Punktzahl ist 99. " Hier müssen Sie eine Möglichkeit finden, die Werte der Konstanten in einer einzelnen Zeichenfolge zu verwenden.
This can be achieved using string concatenation as:
let congratsMessage = "Congratulations " + playerName + "!. Your highest score is " + playerScore + "." print(congratsMessage)
However, you can see this can get messy pretty soon. You have to take care of the spaces after the word Congratulations
, is
. Also, if you have to use more than two constants/variables, it will get unreadable.
There’s an easier way to display the message using string interpolation. Interpolation is the process to include value of a variable or constant inside string literal.
The variable or constant that should insert into the string literal is wrapped in a pair of parentheses ( )
, prefixed by a backslash ()
.
Example 8: String interpolation in Swift
let playerName = "Jack" let playerScore = 99 let congratsMessage = "Congratulations (playerName)!. Your highest score is (playerScore)." print(congratsMessage)
When you run the program, the output will be:
Congratulations Jack!. Your highest score is 99.
Some helpful built-in String functions & variables:
1. isEmpty
This function determines if a string is empty or not. It returns true
if the string is empty otherwise, it returns false
.
Example 9: isEmpty
var emptyString = "" print(emptyString.isEmpty)
When you run the program, the output will be:
true
2. capitalized
This property is used to capitalize every word in a string.
Example 10: capitalized
let someString = "hello, world!" print(someString.capitalized)
When you run the program, the output will be:
Hello, World!
3. uppercased and lowercased
The uppercased function converts string to uppercase letter and the lowercased function converts string to lowercase letter.
Example 11: uppercased() and lowercased()
let someString = "Hello, World!" print(someString.uppercased()) print(someString.lowercased())
When you run the program, the output will be:
HELLO, WORLD! hello, world!
4. Length/count
This property is used to count the total number of characters in a string.
Example 12: count
let someString = "Hello, World!" print(someString.count)
When you run the program, the output will be:
13
5. hasPrefix
Diese Funktion bestimmt, ob eine Zeichenfolge mit bestimmten Zeichen beginnt oder nicht, und gibt einen booleschen Wert zurück. Es wird zurückgegeben, true
wenn das Zeichenfolgenpräfix mit dem angegebenen Wert übereinstimmt. Andernfalls wird zurückgegeben false
.
Beispiel 13: hasPrefix ()
let someString = "Hello, World!" print(someString.hasPrefix("Hell")) print(someString.hasPrefix("hell"))
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
wahr falsch
6. hasSuffix
Diese Funktion bestimmt, ob eine Zeichenfolge mit bestimmten Zeichen endet oder nicht, und gibt einen booleschen Wert zurück. Es wird zurückgegeben, true
wenn das Zeichenfolgensuffix mit dem angegebenen Wert übereinstimmt. Andernfalls wird zurückgegeben false
.
Beispiel 14: hasSuffix ()
print(someString.hasSuffix("rld!")) print(someString.hasSuffix("Rld!"))
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
wahr falsch