Unlock the Power of Strings in Kotlin
What is a String in Kotlin?
A string is a sequence of characters, like “Hello there!”, and is an object of the String class. This means that string literals are implemented as instances of this class.
Defining a String Variable
To create a string variable, simply declare it with the type String, like this: val myString: String = "Hello there!"
. You can also declare the variable and specify its type in one statement, and initialize it later in the program.
Accessing Characters of a String
To access individual characters of a string, use the index access operator. For example, val item = myString[2]
would give you the third character of the string, since indexing starts at 0.
Iterating Through a String
Need to iterate through the characters of a string? No problem! Use a for loop to easily traverse the string. When you run the program, the output will be each character of the string printed on a new line.
Immutability of Strings
Like Java, strings in Kotlin are immutable, meaning you can’t change individual characters of a string. However, you can reassign a string variable using the var
keyword.
String Literals
There are two types of string literals in Kotlin: escaped strings and raw strings. Escaped strings can have escaped characters, like \n
for a newline, while raw strings can contain newlines and arbitrary text, and are delimited by a triple quote “””.
Trimming Raw Strings
You can remove leading whitespaces of a raw string using the trimMargin()
function. By default, it uses the |
character as the margin prefix, but you can change it by passing a new string to the function.
Kotlin String Templates
Kotlin has an awesome feature called string templates, which allows strings to contain template expressions. These expressions start with a dollar sign $
, and are evaluated and concatenated into the string.
Commonly Used String Properties and Functions
The String class in Kotlin provides several useful properties and functions, including:
length
: returns the length of the character sequencecompareTo
: compares the string with a specified objectget
: returns the character at a specified index (can be replaced with the index access operator)plus
: returns a new string by concatenating the original string with another string (can be replaced with the+
operator)subSequence
: returns a new character sequence starting at a specified start and end index
With these properties and functions, you can unlock the full potential of strings in Kotlin. Visit the Kotlin String class for more information on extension properties, extension functions, and constructors.