Ebben az oktatóanyagban megismerheti a karakterek és a karakterláncok használatát a Swiftben. Megtanul különböző karakterláncokon és karaktereken végrehajtható műveleteket is.
Mi az a karakter?
A karakter egyetlen szimbólum (betű, szám stb.). A swift karakter Character
típusa, és a következőképpen van deklarálva:
hadd someCharacter: Karakter
Hogyan lehet deklarálni és hozzárendelni egy karaktert a Swift-ben?
Kettős idézőjelek segítségével hozzárendelhet karaktert a Karaktertípushoz hasonlóan, mint a Karakterlánc, " "
de ennek csak egyetlen karaktert kell tartalmaznia az idézőjelek között " "
.
Ha egynél több karaktert kell megadnia, akkor azt meg kell határoznia a String
helyett Character
.
1. példa: Karakter deklarálása és hozzárendelése
let someCharacter:Character = “H” let specialCharacter:Character = “@” print(someCharacter) print(specialCharacter)
A program futtatásakor a kimenet a következő lesz:
H @
2. példa: Több karakter hozzárendelése (nem működik)
De ha megpróbál két szimbólumot rendelni a karakter belsejében
/* This will give an error Changing the type to String will fix it. */ let failableCharacter:Character = "H@" print(failableCharacter)
Amikor megpróbálja futtatni a fenti kódot, hibaüzenetet kap:
A String típusú érték nem konvertálható karakterré.
Karakter létrehozása unicode és escape szekvencia segítségével
Speciális típusú karaktereket is létrehozhat az.eg emoji számára unicodes használatával. Az unicode kódot az escape szekvencia u (n) használatával hozhatja létre (unicode kódpont, n hexadecimálisan van megadva).
3. példa: Unicode karakter létrehozása
let heartShape:Character = "u(2665)" print(heartShape)
A program futtatásakor a kimenet a következő lesz:
♥
A fenti példában egy szív alakú karaktert hoztak létre kódból U+2665
. Annak ellenére u(2665)
, hogy dupla idézőjelek szerepelnek benne, a fordító ezt nem String
azért kezeli, mert az escape szekvenciát használtuk u(n)
. A menekülési sorrend nem képviseli önmagát, ha szó szerint szerepel.
Mi az a húr?
A karakterlánc egyszerűen karakterek gyűjteménye. A Swift-ben szereplő húrok String
típusai és a következők:
hadd someString: Húr
Hogyan lehet deklarálni és hozzárendelni a stringet a Swift-ben?
A String típusban értéket rendelhet a karakterláncok használatával. A string literal kettős idézőjelekkel körülvett karakterek gyűjteménye " "
.
4. példa: Karakterlánc deklarálása és hozzárendelése
let someString:String = "Hello, world!" let someMessage = "I love Swift." print(someString) print(someMessage)
A program futtatásakor a kimenet a következő lesz:
Helló Világ! Szeretem Swiftet.
Ekkor a két "Hello, world!"
és "I love Swift."
a sztring literálok létrehozásához használt sztringek someString és someMessage volt.
Műveletek egy húron
A Stringben vannak beépített funkciók és tulajdonságok a leggyakrabban használt műveletek kezelésére. Például: a karakterláncok összekapcsolásához változtassa meg nagybetűvel vagy nagybetűvel. Fedezzük fel az alábbiakban gyakran használt műveleteket:
Húr összehasonlítás
Az összehasonlító operátor segítségével egyszerűen ellenőrizheti, hogy két karakterlánc egyenlő-e vagy sem (==)
. Az operátor visszatér, true
ha mindkét karakterlánc egyenlő, különben visszatér false
.
5. példa: Karakterlánc-összehasonlítás a Swift-ben
let someString = "Hello, world!" let someMessage = "I love Swift." let someAnotherMessage = "Hello, world!" print(someString == someMessage) print(someString == someAnotherMessage)
A program futtatásakor a kimenet a következő lesz:
hamis igaz
Húrok összefűzése
Két különböző karakterlánc-érték adható hozzá az összeadás operátorral együtt (+)
vagy az összetett hozzárendelés operátor használatával (+=)
. Karaktert / karakterláncot is hozzáadhat egy karakterlánchoz a append
módszer segítségével .
6. példa: Húrok összefűzése Swiftben
let helloStr = "Hello, " let worldStr = "World" var result = helloStr + worldStr print(result) result.append("!") print(result)
A program futtatásakor a kimenet a következő lesz:
Helló, Világ Helló, Világ!
A fenti programban egy húr eredményt hoztunk létre a helloStr és a worldStr hozzáadásával a + operátor segítségével. Tehát print(result)
kimenetek Helló, világ a képernyőn.
Bármelyik karaktert vagy karakterláncot hozzáfűzheti a append
módszerrel. result.append("!")
egy !
karaktert fűz a karakterlánc végéhez. Szóval, print(result)
outputok Hello, World! a képernyőn.
Karaktersorozat összefűzése fejlett hozzárendelési operátorral
Használhatunk speciális hozzárendelési operátort (+ =) is a karakterlánc hozzáfűzéséhez.
7. példa: Karaktersorozat összefűzése a + = operátor használatával
var helloStr = "Hello, " let worldStr = "World!" helloStr += worldStr print(helloStr)
A program futtatásakor a kimenet a következő lesz:
Helló Világ!
Figyelje meg a var használatát a helloStr beengedése helyett. Ha megadta a helloStr konstansot a let használatával, akkor később nem módosíthatja azt az +=
operátor használatával, és végül hibát kap. Tehát meg kell adnia a helloStr változót.
Húrinterpoláció
Ez egy sztring literál kiértékelésének egyszerű folyamata, amely változókból, konstansokból stb. Áll. Képzelje el, hogy a játékos nevét és pontszámát két konstansban tárolja:
let playerName = "Jack" legyen playerScore = 99
Most megjelenítenie kell egy üzenetet a játékosnak: "Gratulálok Jack!. A legmagasabb pontszám 99." Itt meg kell adnod az állandók értékeinek egyetlen karaktersorozatban való használatát.
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
Ez a függvény meghatározza, hogy egy karakterlánc bizonyos karakterekkel kezdődik-e vagy sem, és logikai értéket ad vissza. Akkor tér vissza, true
ha a karakterlánc előtag megegyezik a megadott értékkel, ellenkező esetben visszatér false
.
13. példa: hasPrefix ()
let someString = "Hello, World!" print(someString.hasPrefix("Hell")) print(someString.hasPrefix("hell"))
A program futtatásakor a kimenet a következő lesz:
igaz hamis
6. hasSuffix
Ez a függvény meghatározza, hogy egy karakterlánc bizonyos karakterekkel végződik-e vagy sem, és logikai értéket ad vissza. Akkor tér vissza, true
ha a karakterlánc utótag megegyezik a megadott értékkel, ellenkező esetben visszatér false
.
14. példa: hasSuffix ()
print(someString.hasSuffix("rld!")) print(someString.hasSuffix("Rld!"))
A program futtatásakor a kimenet a következő lesz:
igaz hamis