Znaky a reťazce Swift (s príkladmi)

V tomto výučbe sa dozviete o používaní znakov a reťazcov v aplikácii Swift. Dozviete sa tiež rôzne operácie, ktoré je možné vykonať s reťazcami a znakmi.

Čo je to postava?

Znak je jeden symbol (písmeno, číslo atď.). Rýchle znaky sú Charactertypu a sú deklarované ako:

 let someCharacter: Character

Ako deklarovať a priradiť znak v Swifte?

Hodnotu môžete priraďovať rovnakým typom znakov ako reťazec pomocou dvojitých úvodzoviek " ", mala by však obsahovať iba jeden znak v úvodzovkách " ".

Ak potrebujete zahrnúť viac ako jeden znak, musíte ho definovať Stringnamiesto Character.

Príklad 1: Vyhlásenie a priradenie znaku

 let someCharacter:Character = “H” let specialCharacter:Character = “@” print(someCharacter) print(specialCharacter)

Po spustení programu bude výstup:

 H @

Príklad 2: Priradenie viac ako jedného znaku (nefunguje)

Ale ak sa pokúsite priradiť dva symboly k znaku ako

 /* This will give an error Changing the type to String will fix it. */ let failableCharacter:Character = "H@" print(failableCharacter) 

Pri pokuse o spustenie vyššie uvedeného kódu sa zobrazí chyba ako:

 Hodnotu typu String nemožno previesť na znak.

Vytváranie znakov pomocou unicode a úniková sekvencia

Môžete tiež vytvoriť špeciálny typ znakov, napríklad emodži pomocou unicode. Unicode môžete vytvoriť pomocou únikovej sekvencie u (n) (bod kódu Unicode, n je v šestnástkovej sústave).

Príklad 3: Vytvorenie znaku unicode

 let heartShape:Character = "u(2665)" print(heartShape) 

Po spustení programu bude výstup:

Vo vyššie uvedenom príklade bol znak tvaru srdca vytvorený z kódu U+2665. Aj keď u(2665)je to zahrnuté v úvodzovkách, kompilátor to nepovažuje za a, Stringpretože sme použili únikovú postupnosť u(n). Úniková sekvencia sa nereprezentuje, ak je uvedená v doslovnom znení.

Čo je to reťazec?

Reťazec je jednoducho zbierka znakov. Reťazce v Swift sú Stringtypu a deklarované ako:

 nech someString: String

Ako deklarovať a priradiť reťazec v Swifte?

Hodnotu v type String môžete priradiť pomocou reťazcových literálov. Reťazcový literál je súbor znakov obklopených dvojitými úvodzovkami " ".

Príklad 4: Vyhlásenie a priradenie reťazca

 let someString:String = "Hello, world!" let someMessage = "I love Swift." print(someString) print(someMessage)

Po spustení programu bude výstup:

Ahoj, svet! Milujem Swift.

Tu sú oba "Hello, world!"a "I love Swift."sú reťazcovými literálmi používanými na vytváranie reťazcových premenných someString a someMessage.

Operácie na reťazci

V reťazci sú niektoré zabudované funkcie a vlastnosti, ktoré slúžia na prácu s najčastejšie používanými operáciami. Napríklad: ak chcete spojiť reťazce, zmeňte to na veľké písmená alebo veľké písmená. Pozrime sa na niektoré často používané operácie uvedené nižšie:

Porovnanie reťazcov

Pomocou operátora porovnania môžete jednoducho skontrolovať, či sú dva reťazce rovnaké alebo nie (==). Operátor vráti návraty, trueak sú obidva reťazce rovnaké, inak sa vráti false.

Príklad 5: Porovnanie reťazcov v Swifte

 let someString = "Hello, world!" let someMessage = "I love Swift." let someAnotherMessage = "Hello, world!" print(someString == someMessage) print(someString == someAnotherMessage) 

Po spustení programu bude výstup:

 nepravda pravda

Zreťazenie reťazca

Dva rôzne reťazce môžu byť pridané spolu s operátorom pridania (+)alebo pomocou operátora zloženého priradenia (+=). Znak / reťazec môžete do reťazca pridať aj pomocou appendmetódy.

Príklad 6: Zreťazenie reťazcov v Swifte

 let helloStr = "Hello, " let worldStr = "World" var result = helloStr + worldStr print(result) result.append("!") print(result) 

Po spustení programu bude výstup:

 Ahoj, svet Ahoj, svet!

Vo vyššie uvedenom programe sme vytvorili reťazcový výsledok pripojením operátorov + helloStr a worldStr. Takže, print(result)výstupy Hello, World na obrazovke.

Môžete tiež pridať ľubovoľný znak alebo reťazec pomocou appendmetódy. result.append("!")pripojí !znak na koniec reťazca. Takže print(result)výstupy Hello, World! na obrazovke.

Zreťazenie reťazcov pomocou operátora pokročilého priradenia

Na pripojenie reťazca môžeme použiť aj operátor pokročilého priradenia (+ =).

Príklad 7: Zreťazenie reťazcov pomocou operátora + =

 var helloStr = "Hello, " let worldStr = "World!" helloStr += worldStr print(helloStr) 

Po spustení programu bude výstup:

 Ahoj, svet!

Všimnite si použitie varu namiesto vpustenia helloStr. Ak ste definovali konštantu helloStr pomocou let, nemôžete ju neskôr zmeniť pomocou +=operátora a nakoniec sa zobrazí chyba. Musíte teda definovať premennú helloStr.

Reťazcová interpolácia

Jedná sa o jednoduchý proces vyhodnotenia reťazcového literálu, ktorý sa skladá z premenných, konštánt atď. Predstavte si, že máte meno hráča a skóre uložené v dvoch konštantách ako:

 nechať playerName = "Jack" nechať playerScore = 99

Teraz musíte hráčovi zobraziť správu ako „Gratulujeme, Jacku! Vaše najvyššie skóre je 99.“ Tu potrebujete spôsob, ako použiť hodnoty konštánt v jednom reťazci.

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

Táto funkcia určuje, či reťazec začína určitými znakmi alebo nie, a vráti boolovskú hodnotu. Vráti sa, trueak sa predpona reťazca zhoduje s poskytnutou hodnotou, inak sa vráti false.

Príklad 13: hasPrefix ()

 let someString = "Hello, World!" print(someString.hasPrefix("Hell")) print(someString.hasPrefix("hell")) 

Po spustení programu bude výstup:

 pravda lož 

6. hasSuffix

Táto funkcia určuje, či reťazec končí alebo nie, a vráti boolovskú hodnotu. Vráti sa, trueak sa prípona reťazca zhoduje s poskytnutou hodnotou, inak sa vráti false.

Príklad 14: hasSuffix ()

 print(someString.hasSuffix("rld!")) print(someString.hasSuffix("Rld!")) 

Po spustení programu bude výstup:

 pravda lož 

Zaujímavé články...