Kotlin karakterlánc és karakterlánc sablonok (példákkal)

Ebben a cikkben a Kotlin karakterláncokról, karakterlánc-sablonokról és néhány gyakran használt karakterlánc-tulajdonságról és -funkcióról ismerhet meg példákat.

Kotlin húr

A karakterláncok egy karaktersorozat. Például "Hello there!"egy karakterlánc szó.

Kotlinban az összes húr Stringosztály objektuma . Jelentése: az olyan karakterlánc-literálok, mint "Hello there!"amilyeneket ennek az osztálynak a példányaként hajtanak végre.

Hogyan hozhatunk létre String változót?

Így határozhat meg egy Stringváltozót a Kotlinban. Például,

 val myString = "Hé, ott!"

Itt a myString egy típusú változó String.

Deklarálhat egy típusú változót Stringés megadhatja annak típusát egy utasításban, és inicializálhatja a változót egy másik utasításban a program későbbi részében.

 val myString: String… myString = "Howdy"

Hogyan érhető el egy karakterlánc karaktere?

A karakterlánc elemeinek (karakterének) eléréséhez index-hozzáférési operátort kell használni. Például,

val myString = "Hé, ott!" val item = myString (2)

Itt az elem változó az yS, a myString karakterlánc harmadik karakterét tartalmazza. Azért, mert az indexelés Kotlinban 0-tól nem 1-től kezdődik.

val myString = "Hé, ott!" var item: Char item = myString (0) // elem 'H' elemet tartalmaz = myString (9) // az elem '!' item = myString (10) // Hiba! A karakterlánc indexe kívül esik az elemen = myString (-1) // Hiba! A karakterlánc indexe kívül esik

Példa: Iteráljon egy húron keresztül

Ha egy karakterlánc elemein keresztül kell iterálnia, akkor könnyen megteheti a for ciklus használatával.

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

A program futtatásakor a kimenet a következő lesz:

 H e y ! 

A húrok Kotlinban megváltoztathatatlanok

A Java-hoz hasonlóan a húrok is megváltoztathatatlanok Kotlinban. Ez azt jelenti, hogy nem módosíthatja a karakterlánc egyedi karakterét. Például,

var myString = "Hé!" myString (0) = 'h' // Hiba! Húrok

Ha azonban a kulcsszó használatával deklarálta a változót, újból hozzárendelhet egy karakterlánc-változót var. ( Ajánlott irodalom : Kotlin var Vs val)

Példa: Stringváltozó hozzárendelése.

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

A program futtatásakor a kimenet a következő lesz:

myString = Hé! myString = Helló!

Vonós literálok

A literál egy fix érték forráskód ábrázolása. Például "Hey there!"egy karakterlánc, amely közvetlenül megjelenik a programban, anélkül, hogy számítást igényelne (mint a változók).

Kétféle húr literál létezik Kotlinban:

1. Megszökött húr

Lehetséges, hogy egy megszökött karaktersorozat megszökött karaktereket tartalmaz. Például,

 val myString = "Hé, ott! n" 

Itt egy escape karakter, amely beszúr egy új sort a szövegben, ha úgy tűnik.

Itt van egy lista a Kotlinban támogatott menekülési karakterekről:

  • - Beszúrások fül
  •  - Visszatérés
  • - Új sort ír be
  • - Beszúrja a kocsivisszát
  • \' - Egyetlen idézőjel beszúrása
  • " - Dupla idézőjelet illeszt be
  • \ - Visszavonás
  • $ - Beilleszti a dollár karaktert

2. Nyers húr

A nyers karakterlánc tartalmazhat új sorokat (nem új sortörési karaktereket) és tetszőleges szöveget. A nyers karakterláncot hármas idézet határolja """. Például,

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

A program futtatásakor a kimenet a következő lesz:

 mert (karakter a "Hé!") println (karakter)

A trimMargin () függvény segítségével eltávolíthatja a nyers karakterlánc vezető szóközét. Például,

Példa: Nyers karakterlánc nyomtatása

 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()) ) 

A program futtatásakor a kimenet a következő lesz:

Kimenet a trimMargin függvény használata nélkül: | Kotlin érdekes. | A Kotlint a JetBrains szponzorálja és fejleszti. Kimenet a trimMargin függvény használatával: Kotlin érdekes. A Kotlint a JetBrains szponzorálja és fejleszti.

Alapértelmezés szerint a trimMargin()function | mint margin előtag. Megváltoztathatja azonban, ha új karakterláncot ad át ennek a függvénynek.

Példa: trimMargin () argumentummal

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

A program futtatásakor a kimenet a következő lesz:

Kotlin érdekes. A Kotlint a JetBrains szponzorálja és fejleszti.

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:

Az s1 karakterlánc hossza 10. Az s1 és az s2 húr egyenlő. A harmadik karakter y. eredmény = Hé ott! Hogy vagy? Az alhúr "a"

Látogasson el a Kotlin String osztályba, ahol további információt talál a kiterjesztés tulajdonságairól, a kiterjesztésről, a funkciókról és a kivitelezőkről.

érdekes cikkek...