Suche…


Elemente von String

Elemente von String sind Zeichen, auf die mit der Indexierungsoperationszeichenfolge string[index] zugegriffen werden kann.

val str = "Hello, World!"
println(str[1]) // Prints e

String-Elemente können mit einer for-Schleife durchlaufen werden.

for (c in str) {
    println(c)
}

String Literals

Kotlin hat zwei Arten von String-Literalen:

  • Fluchtzeichenfolge
  • Roher String

Bei einer Zeichenfolge mit Escapezeichen werden Sonderzeichen durch Escapezeichen behandelt. Die Flucht erfolgt mit einem Backslash. Die folgenden Escape-Sequenzen werden unterstützt: \t , \b , \n , \r , \' , \" , \\ und \$ . Verwenden Sie zur Kodierung anderer Zeichen die Unicode-Escape-Sequenz-Syntax: \uFF00 .

val s = "Hello, world!\n"

Unformatierte Zeichenfolge , die durch ein dreifaches Anführungszeichen """ , enthält keine Escapezeichen und kann Zeilenumbrüche und andere Zeichen enthalten

val text = """
    for (c in "foo")
        print(c)
"""

Führende Leerzeichen können mit der trimMargin () - Funktion entfernt werden.

val text = """
    |Tell me and I forget.
    |Teach me and I remember.
    |Involve me and I learn.
    |(Benjamin Franklin)
    """.trimMargin()

Das Standard-Randpräfix ist Pipe-Zeichen | kann dies als Parameter für trimMargin festgelegt werden; zB trimMargin(">") .

String-Vorlagen

Sowohl mit Escapezeichen versehene Zeichenfolgen als auch unformatierte Zeichenfolgen können Vorlagenausdrücke enthalten. Der Template-Ausdruck ist ein Stück Code, das ausgewertet wird und das Ergebnis in einer Zeichenfolge verkettet wird. Es beginnt mit einem Dollarzeichen $ und besteht entweder aus einem Variablennamen:

val i = 10
val s = "i = $i" // evaluates to "i = 10"

Oder ein beliebiger Ausdruck in geschweiften Klammern:

val s = "abc"
val str = "$s.length is ${s.length}" // evaluates to "abc.length is 3"

Um ein buchstäbliches Dollarzeichen in eine Zeichenfolge einzufügen, können Sie es mit einem Backslash umgehen

val str = "\$foo" // evaluates to "$foo"

Die Ausnahme sind rohe Zeichenfolgen, die kein Escaping unterstützen. In rohen Zeichenfolgen können Sie die folgende Syntax verwenden, um ein Dollarzeichen darzustellen.

val price = """
${'$'}9.99
"""

String Gleichheit

In Kotlin werden Strings mit dem Operator == verglichen, der die strukturelle Gleichheit berücksichtigt.

val str1 = "Hello, World!"
val str2 = "Hello," + " World!"
println(str1 == str2) // Prints true

Die referenzielle Gleichheit wird mit === Operator === geprüft.

val str1 = """
    |Hello, World!
    """.trimMargin()

val str2 = """
    #Hello, World!
    """.trimMargin("#")

val str3 = str1

println(str1 == str2) // Prints true
println(str1 === str2) // Prints false
println(str1 === str3) // Prints true


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow