У овом чланку ћете помоћу примера научити о Котлиновим жицама, предлошцима низова и неколико често коришћених својстава и функција низа.
Котлин Стринг
Низови су низ знакова. На пример, "Hello there!"је стринг литерал.
У Котлину су све жице објекти Stringкласе. Значи, стринг литерали као што "Hello there!"су имплементирани као инстанце ове класе.
Како створити променљиву Стринг?
Ево како можете да дефинишете Stringпроменљиву у Котлину. На пример,
вал миСтринг = "Здраво!"
Овде је миСтринг променљива типа String.
Можете прогласити променљиву типа Stringи одредити њен тип у једном изразу, а променљиву променити у другом изразу касније у програму.
вал миСтринг: Стринг … миСтринг = "Здраво"
Како приступити ликовима низа?
За приступ елементима (знаку) низа користи се оператор приступа индексу. На пример,
вал миСтринг = "Здраво!" вал ставка = миСтринг (2)
Овде променљива ставке садржи и, трећи знак низа миСтринг. То је зато што индексирање у Котлину почиње од 0, а не од 1.
вал миСтринг = "Здраво!" вар итем: Цхар итем = миСтринг (0) // ставка садржи „Х“ ставку = миСтринг (9) // ставка садржи „!“ итем = миСтринг (10) // Грешка! Индекс низа је изван опсега итем = миСтринг (-1) // Грешка! Индекс низа је изван опсега
Пример: Итерација низом
Ако требате да прелиставате елементе низа, то можете лако учинити помоћу фор петље.
fun main(args: Array) ( val myString = "Hey!" for (item in myString) ( println(item) ) )
Када покренете програм, излаз ће бити:
H e y !
Жице у Котлину су непроменљиве
Као и Јава, низови су у Котлину непроменљиви. То значи да не можете мењати појединачни карактер низа. На пример,
вар миСтринг = "Хеј!" миСтринг (0) = 'х' // Грешка! Жице
Међутим, променљиву низа можете поново доделити ако сте променљиву прогласили помоћу кључне речи var. ( Препоручена литература : Котлин вар Вс вал)
Пример: Поновно додељивање променљиве низа.
fun main(args: Array) ( var myString = "Hey!" println("myString = $myString") myString = "Hello!" println("myString = $myString") )
Када покренете програм, излаз ће бити:
миСтринг = Хеј! миСтринг = Здраво!
Стринг Литералс
Литерал је представљање изворног кода фиксне вредности. На пример, "Hey there!"је стринг литерал који се појављује директно у програму без потребе за израчунавањем (попут променљивих).
Постоје две врсте стринг литерала у Котлину:
1. Побегла струна
Превучени низ је можда у њима пребегао знак. На пример,
вал миСтринг = "Здраво! н"
Овде је знак за излаз који убацује нови ред у текст тамо где се појављује.
Ево листе излазних знакова подржаних у Котлину:
- Картица Уметања- Убацује бацкспаце- Убацује нови ред- Умеће повратак кочије\'- Убацује један наводник"- Убацује знак двоструких наводника\- Убацује косу црту$- Убацује доларски знак
2. Сирови низ
Необрађени низ може садржати нове редове (не нови знак за цртање) и произвољан текст. Необрађени низ је ограничен троструким наводником """. На пример,
fun main(args: Array) ( val myString = """ for (character in "Hey!") println(character) """ print(myString) )
Када покренете програм, излаз ће бити:
за (знак у "Хеј!") принтлн (знак)
Можете да уклоните водеће размаке сировог низа помоћу функције тримМаргин (). На пример,
Пример: Штампање сировог низа
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()) )
Када покренете програм, излаз ће бити:
Излаз без употребе функције тримМаргин: | Котлин је занимљив. | Котлин спонзорише и развија ЈетБраинс. Излаз помоћу функције тримМаргин: Котлин је занимљив. Котлин спонзорише и развија ЈетБраинс.
trimMargin()Функција подразумевано користи | као префикс маргине. Међутим, можете га променити додавањем новог низа овој функцији.
Пример: тримМаргин () са Аргумент
fun main(args: Array) ( val myString = """ !!! Kotlin is interesting. !!! Kotlin is sponsored and developed by JetBrains. """ println(myString.trimMargin("!!! ")) )
Када покренете програм, излаз ће бити:
Котлин је занимљив. Котлин спонзорише и развија ЈетБраинс.
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.
lengthproperty - returns the length of character sequence of an string.compareTofunction - compares this String (object) with the specified object. Returns 0 if the object is equal to the specfied object.getfunction - returns character at the specified index.
You can use index access operator instead ofgetfunction as index access operator internally callsgetfunction.plusfunction - 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 ofplusfunction as+operator callsplusfunction under the hood.subSequenceFunction - 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:
Дужина с1 низа је 10. Жице с1 и с2 су једнаке. Трећи знак је и. резултат = Здраво! Како си? Подниз је "тхе"
Посетите класу Котлин Стринг за више информација о својствима екстензије, екстензији, функцијама и конструкторима.








