Greiti simboliai ir eilutės (su pavyzdžiais)

Šioje pamokoje sužinosite apie simbolių ir eilučių naudojimą „Swift“. Taip pat sužinosite įvairių operacijų, kurias galima atlikti su eilutėmis ir simboliais.

Kas yra personažas?

Simbolis yra vienas simbolis (raidė, skaičius ir kt.). „Swift“ simbolis yra Charactertipo ir yra deklaruojamas kaip:

 tegul someCharacter: Charakteris

Kaip deklaruoti ir priskirti „Swift“ veikėją?

Galite priskirti vertę tipo personažai pačiu kaip Styginių naudojant dvigubų kabučių " ", tačiau ji turėtų būti tik vieną simbolį viduje kabučių " ".

Jei reikia įtraukti daugiau nei vieną simbolį, turite jį apibrėžti Stringvietoj Character.

1 pavyzdys: simbolio deklaravimas ir priskyrimas

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

Kai paleisite programą, išvestis bus:

 H @

2 pavyzdys: daugiau nei vieno simbolio priskyrimas (neveikia)

Bet jei pabandysite simbolio viduje priskirti du simbolius kaip

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

Kai bandysite paleisti pirmiau nurodytą kodą, gausite klaidą kaip:

 Negalima konvertuoti eilutės tipo vertės į simbolį.

Simbolio kūrimas naudojant „unicode“ ir „escape“ seką

Taip pat galite sukurti specialų simbolių tipą. „Unicode“ galite sukurti naudodami pabėgimo seką u (n) („unicode“ kodo taškas, n yra šešioliktainis).

3 pavyzdys: Unicode simbolio sukūrimas

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

Kai paleisite programą, išvestis bus:

Ankstesniame pavyzdyje širdies formos simbolis buvo sukurtas iš kodo U+2665. Nors u(2665)kompiliatorius yra įtrauktas į dvigubas kabutes, kompiliatorius to nelaiko tuo, Stringkad mes naudojome pabėgimo seką u(n). Pabėgimo seka neatspindi savęs, kai įtraukiama į pažodinį.

Kas yra stygos?

Stygos yra tiesiog simbolių rinkinys. „Swift“ stygos yra tokio Stringtipo ir deklaruojamos kaip:

 tegul someString: Stygos

Kaip deklaruoti ir priskirti „Swift“ eilutę?

Naudodami eilutės literalus, vertę galite priskirti eilutės tipu. String literal yra simbolių rinkinys, apsuptas dvigubomis kabutėmis " ".

4 pavyzdys: eilutės deklaravimas ir priskyrimas

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

Kai paleisite programą, išvestis bus:

Labas pasauli! Aš myliu Swift.

Čia tiek "Hello, world!"ir "I love Swift."yra eilutės, naudojamos kurti styginių kintamieji atitinkamai someString ir someMessage.

Stygos operacijos

„String“ yra keletas integruotų funkcijų ir ypatybių, skirtų tvarkyti dažniausiai naudojamas operacijas. Pvz .: norėdami sujungti eilutes, pakeiskite ją į didžiąsias arba rašykite didžiosiomis raidėmis. Panagrinėkime keletą toliau dažnai naudojamų operacijų:

Styginių palyginimas

Galite paprasčiausiai patikrinti, ar dvi eilutės yra lygios, ar nenaudodami palyginimo operatoriaus (==). Operatorius grąžina grąžą, truejei abi eilutės yra lygios, kitaip jis grįžta false.

5 pavyzdys: Stygų palyginimas programoje „Swift“

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

Kai paleisite programą, išvestis bus:

 melas, tiesa

Styginių sujungimas

Dviejų skirtingų eilučių vertė gali būti pridėta kartu su pridėjimo operatoriumi (+)arba naudojant sudėtinio priskyrimo operatorių (+=). Taip pat galite pridėti simbolį / eilutę eilutėje naudodami appendmetodą.

6 pavyzdys: Styginių sujungimas sistemoje „Swift“

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

Kai paleisite programą, išvestis bus:

 Sveiki, pasauli Sveiki, pasauli!

Pirmiau pateiktoje programoje mes sukūrėme eilutės rezultatą, pridėdami „helloStr“ ir „worldStr“ naudodami + operatorių. Taigi, print(result)išveda Hello, World ekrane.

Taip pat galite pridėti bet kurį simbolį ar eilutę naudodami appendmetodą. eilutės pabaigoje result.append("!")prideda !simbolį. Taigi, print(result)rezultatai Sveiki, pasauli! ekrane.

Styginių sujungimas naudojant išplėstinį priskyrimo operatorių

We can also use advanced assignment operator (+=) to append string.

Example 7: String concatenation using += operator

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

When you run the program, the output will be:

 Hello, World!

Notice the use of var instead of let in helloStr. If you have defined helloStr a constant using let, you cannot change it later using the += operator and eventually get an error. So, you have to define helloStr a variable.

String Interpolation

It is a simple process of evaluating a string literal that consists of variables, constants etc. Imagine you have player’s name and score stored in two constants as:

 let playerName = "Jack" let playerScore = 99

Now you need to display a message to the player as "Congratulations Jack!. Your highest score is 99." Here, you need to a way to use the values of the constants in a single string.

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

Ši funkcija nustato, ar eilutė prasideda nuo tam tikrų simbolių, ar ne, ir pateikia loginę reikšmę. Jis grąžinamas, truejei eilutės priešdėlis sutampa su pateikta reikšme, priešingu atveju false.

13 pavyzdys: hasPrefix ()

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

Kai paleisite programą, išvestis bus:

 tiesa melaginga 

6. hasSuffix

Ši funkcija nustato, ar eilutė baigiasi tam tikrais simboliais, ar ne, ir pateikia loginę vertę. Jis grąžinamas, truejei eilutės priesaga sutampa su pateikta reikšme, priešingu atveju false.

14 pavyzdys: hasSuffix ()

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

Kai paleisite programą, išvestis bus:

 tiesa melaginga 

Įdomios straipsniai...