„Kotlin“ styginių ir styginių šablonai (su pavyzdžiais)

Šiame straipsnyje su pavyzdžių pagalba sužinosite apie „Kotlin“ eilutes, eilučių šablonus ir keletą dažniausiai naudojamų stygų savybių ir funkcijų.

Kotlino stygos

Stygos yra simbolių seka. Pavyzdžiui, "Hello there!"yra eilutės pažodinis.

Kotline visos stygos yra Stringklasės objektai . Reiškia, tokie eilutės literalai, kokie "Hello there!"yra įgyvendinami kaip šios klasės egzemplioriai.

Kaip sukurti „String“ kintamąjį?

Štai kaip galite apibrėžti Stringkintamąjį „Kotlin“. Pavyzdžiui,

 val myString = "Ei ten!"

Čia „myString“ yra tipo kintamasis String.

Galite deklaruoti kintamąjį tipo Stringir nurodyti jo tipą viename sakinyje, o vėliau inicializuoti kintamąjį kitame sakinyje vėliau.

 val myString: String … myString = "Howdy"

Kaip pasiekti eilutės simbolius?

Norėdami pasiekti eilutės elementus (simbolius), naudojamas indekso prieigos operatorius. Pavyzdžiui,

val myString = "Ei ten!" val item = „myString“ (2)

Čia elemento kintamajame yra y, trečiasis „myString“ eilutės simbolis. Tai yra todėl, kad indeksavimas Kotline prasideda nuo 0, o ne nuo 1.

val myString = "Ei ten!" var elementas: Char item = myString (0) // elemente yra 'H' elementas = myString (9) // elemente yra '!' item = myString (10) // Klaida! Eilučių indeksas yra už diapazono ribų = myString (-1) // Klaida! Stygų indeksas yra už diapazono ribų

Pavyzdys: kartokite per eilutę

Jei jums reikia kartoti eilutės elementus, galite tai lengvai padaryti naudodami „for loop“.

 fun main(args: Array) ( val myString = "Hey!" for (item in myString) ( println(item) ) )

Kai paleisite programą, išvestis bus:

 H e y ! 

Stygos Kotline yra nekintamos

Kaip ir „Java“, „Kotlin“ stygos yra nekintamos. Tai reiškia, kad jūs negalite pakeisti individualaus eilutės simbolio. Pavyzdžiui,

var myString = "Ei!" „myString“ (0) = 'h' // Klaida! Stygos

Tačiau galite dar kartą priskirti eilutės kintamąjį, jei deklaravote kintamąjį naudodami raktinį žodį var. ( Rekomenduojama literatūra : Kotlin var Vs val)

Pavyzdys: eilutės kintamojo priskyrimas.

 fun main(args: Array) ( var myString = "Hey!" println("myString = $myString") myString = "Hello!" println("myString = $myString") )

Kai paleisite programą, išvestis bus:

myString = Ei! myString = Sveiki!

Styginiai literalai

Pažodinis yra fiksuotos vertės šaltinio kodas. Pavyzdžiui, "Hey there!"yra eilutės literalas, kuris pasirodo tiesiogiai programoje nereikalaujant skaičiavimo (kaip kintamieji).

Kotline yra dviejų tipų styginių literalai:

1. Pabėgusi styga

Pabėgusi eilutė juose galėjo pabėgti. Pavyzdžiui,

 val myString = "Ei čia! n" 

Čia yra pabėgimo simbolis, įterpiantis naują eilutę į tekstą ten, kur jis rodomas.

Čia yra pabėgimo simbolių, palaikomų Kotlin, sąrašas:

  • - Įterpimų skirtukas
  •  - Įterpia atgalinį klavišą
  • - Įterpia naują eilutę
  • - Įterpia vežimo atgal
  • \' - Įterpia vienos citatos simbolį
  • " - Įterpia dvigubą citatos simbolį
  • \ - Įterpia atgalinį brūkšnį
  • $ - Įterpia dolerio simbolį

2. Neapdorota styga

Neapdorotoje eilutėje gali būti naujos eilutės (ne naujas eilučių pabėgimo simbolis) ir savavališkas tekstas. Neapdorota eilutė yra atskirta triguba citata """. Pavyzdžiui,

 fun main(args: Array) ( val myString = """ for (character in "Hey!") println(character) """ print(myString) )

Kai paleisite programą, išvestis bus:

 (simbolis „Ei!“) println (personažas)

Naudodami funkciją trimMargin (), galite pašalinti neapdorotos eilutės priekinius tarpus. Pavyzdžiui,

Pavyzdys: Neapdorotos eilutės spausdinimas

 fun main(args: Array) ( println("Output without using trimMargin function:") val myString = """ |Kotlin is interesting. |Kotlin is sponsored and developed by JetBrains. """ println(myString) println("Output using trimMargin function:") println(myString.trimMargin()) ) 

Kai paleisite programą, išvestis bus:

Rezultatas nenaudojant trimMargin funkcijos: | Kotlinas yra įdomus. | „Kotlin“ remia ir plėtoja „JetBrains“. Rezultatas naudojant trimMargin funkciją: Kotlinas yra įdomus. „Kotlin“ remia ir plėtoja „JetBrains“.

Pagal numatytuosius nustatymus trimMargin()funkcija naudoja | kaip paraštės priešdėlis. Tačiau galite jį pakeisti, perduodami naują eilutę šiai funkcijai.

Pavyzdys: trimMargin () su argumentu

 fun main(args: Array) ( val myString = """ !!! Kotlin is interesting. !!! Kotlin is sponsored and developed by JetBrains. """ println(myString.trimMargin("!!! ")) )

Kai paleisite programą, išvestis bus:

Kotlinas įdomus. „Kotlin“ remia ir plėtoja „JetBrains“.

Kotlin String Templates

Kotlin has an awesome feature called string templates that allows strings to contain template expressions.

A string template expression starts with a dollar sign $. Here are few examples:

Example: Kotlin String Template

 fun main(args: Array) ( val myInt = 5; val myString = "myInt = $myInt" println(myString) )

When you run the program, the output will be:

 myInt = 5

It is because the expression $myInt (expression starting with $ sign) inside the string is evaluated and concatenated into the string.

Example: String Template With Raw String

 fun main(args: Array) ( val a = 5 val b = 6 val myString = """ |$(if (a> b) a else b) """ println("Larger number is: $(myString.trimMargin())") )

When you run the program, the output will be:

 Larger number is: 6 

Few String Properties and Functions

Since literals in Kotlin are implemented as instances of String class, you can use several methods and properties of this class.

  • length property - returns the length of character sequence of an string.
  • compareTo function - compares this String (object) with the specified object. Returns 0 if the object is equal to the specfied object.
  • get function - returns character at the specified index.
    You can use index access operator instead of get function as index access operator internally calls get function.
  • plus function - returns a new string which is obtained by the concatenation of this string and the string passed to this function.
    You can use + operator instead of plus function as + operator calls plus function under the hood.
  • subSequence Function - returns a new character sequence starting at the specified start and end index.

Example: String Properties and Function

 fun main(args: Array) ( val s1 = "Hey there!" val s2 = "Hey there!" var result: String println("Length of s1 string is $(s1.length).") result = if (s1.compareTo(s2) == 0) "equal" else "not equal" println("Strings s1 and s2 are $result.") // s1.get(2) is equivalent to s1(2) println("Third character is $(s1.get(2)).") result = s1.plus(" How are you?") // result = s1 + " How are you?" println("result = $result") println("Substring is "$(s1.subSequence(4, 7)) "") )

When you run the program, the output is:

S1 eilutės ilgis yra 10. Stygos s1 ir s2 yra lygios. Trečias simbolis yra y. rezultatas = Ei ten! Kaip laikaisi? Substringas yra „the“

Apsilankykite „Kotlin String“ klasėje, jei norite gauti daugiau informacijos apie plėtinių savybes, plėtinius, funkcijas ir konstruktorius.

Įdomios straipsniai...