KotlinStrings
Kotlin Strings
Strings are used for storing text.
A string contains a collection of characters surrounded by double quotes:
UnlikeJava, you do not have to specify that the variable should be aString. Kotlin is smart enough to understand that the greeting variable in the example above is aString because of the double quotes.
However, just like with other data types, you can specify the type if you insist:
Note: If you want to create aString without assigning the value (and assign the value later), you must specify the type while declaring the variable:
Access a String
To access the characters (elements) of a string, you must refer to theindex number insidesquare brackets.
String indexes start with 0. In the example below, we access the first and third element intxt:
Example
var txt = "Hello World"println(txt[0]) // first element (H)println(txt[2]) // third element (l)Try it Yourself »[0] is the first element. [1] is the second element, [2] is the third element, etc.
String Length
A String in Kotlin is an object, which contain properties and functions that can perform certain operations on strings, by writing a dot character (.) after the specific string variable. For example, the length of a string can be found with thelength property:
Example
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"println("The length of the txt string is: " + txt.length)Try it Yourself »String Functions
There are many string functions available, for exampleuppercase() andlowercase():
Example
var txt = "Hello World"println(txt.uppercase()) // Outputs "HELLO WORLD"println(txt.lowercase()) // Outputs "hello world"Try it Yourself »Comparing Strings
ThecompareTo(string) function compares two strings and returns 0 if both are equal:
Example
var txt1 = "Hello World"
var txt2 = "Hello World"println(txt1.compareTo(txt2)) // Outputs 0 (they are equal)Try it Yourself »Finding a String in a String
TheindexOf() function returns theindex (the position) of the first occurrence of a specified text in a string (including whitespace):
Example
var txt = "Please locate where 'locate' occurs!"println(txt.indexOf("locate")) // Outputs 7Try it Yourself »Remember that Kotlin counts positions from zero.
0 is the first position in a string, 1 is the second, 2 is the third ...
Quotes Inside a String
To use quotes inside a string, use single quotes ('):
String Concatenation
The+ operator can be used between strings to add them together to make a new string. This is calledconcatenation:
Example
var firstName = "John"var lastName = "Doe"println(firstName + " " + lastName)Try it Yourself »Note that we have added an empty text (" ") to create a space between firstName and lastName on print.
You can also use theplus() function to concatenate two strings:
Example
var firstName = "John "var lastName = "Doe"println(firstName.plus(lastName))Try it Yourself »String Templates/Interpolation
Instead of concatenation, you can also use "string templates", which is an easy way to add variables and expressions inside a string.
Just refer to the variable with the$ symbol:
Example
var firstName = "John"var lastName = "Doe"println("My name is $firstName $lastName")Try it Yourself »"String Templates" is a popular feature of Kotlin, as it reduces the amount of code. For example, you do not have to specify a whitespace between firstName and lastName, like we did in the concatenation example.

