Strings En Kotlin

ANUNCIO
Loading...

En este tutorial verás la definición, declaración y uso de Strings en Kotlin con el fin de representar texto como tipo básico en tus aplicaciones.

El Tipo String

La clase String es la que representa a los strings Kotlin con el fin de tratar texto en nuestros programas.

class String : Comparable<String>, CharSequence
Lenguaje del código: Kotlin (kotlin)

Cada literal String de a forma "cadena" es creado como una instancia de la clase. Por lo que solo basta con usar las comillas dobles para encerrar múltiples caracteres que representen el String deseado:

val customerName:String = "Claudia Martinez" val customerName = "Claudia Martinez" // Puedes omitir el tipo
Lenguaje del código: Kotlin (kotlin)

Caracteres De Un String

Debido a que String implementa la interfaz CharSecuence, es posible interpretar el conjunto como una secuencia de elementos Char.

Esto te permitirá leer los caracteres en sus posiciones a través de get() o su operador equivalente de acceso en corchetes string[indice]:

println(customerName[5]) println(customerName.get(5))
Lenguaje del código: Kotlin (kotlin)

También es posible recorrerlos a través del bucle for:

for(char in customerName){ print(char) }
Lenguaje del código: Kotlin (kotlin)

Incluso usar la propiedad de extensión indices para obtener el rango de índices que sirvan de referencia en el bucle for:

for (index in customerName.indices) { println(customerName[index]) }
Lenguaje del código: Kotlin (kotlin)

Si quieres saber el tamaño de la secuencia de caracteres, accede a la propiedad miembro length del string.

println(customerName.length) // 16
Lenguaje del código: Kotlin (kotlin)

Concatenar Strings En Kotlin

Para crear la combinación de varios valores en un solo String, usa el operador de adición + como herramienta de concatenación.

Este te permite generar una nueva cadena entre un String y otro tipo de la siguiente forma:

// Concatenación val a = "José" + " Monteria" val b = "Cantidad de ahorros: " + 536.4 val c = "Resultado: " + (2 + 4)
Lenguaje del código: Kotlin (kotlin)

Puedes usar a combinación de variables o literales si así lo deseas. Incluso puedes usar el operador de asignación y adición en su forma simplificada:

var d = "Nueva concatenación" d += '!'// "Nueva concatenación!"
Lenguaje del código: Kotlin (kotlin)

Strings Con Múltiples Líneas

En ocasiones es necesario crear literales de String que posean múltiples líneas y que sean interpretadas en su forma plana (raw strings).

Esto puedes lograrlo usando la sintaxis de triple doble comillas (""") para encerrar el conjunto de caracteres.

fun main() { // raw string val welcomeText = """ ¡Bienvenido a la guía de Kotlin de develou.com! En esta serie de tutoriales aprenderás los conceptos básicos sobre el lenguaje y las herramientas necesarias para probarlo """ println(welcomeText) }
Lenguaje del código: Kotlin (kotlin)

Salida:

¡Bienvenido a la guíaa de Kotlin de develou.com! En esta serie de tutoriales aprenderáss los conceptos básicoss sobre el lenguaje y las herramientas necesarias para probarlo
Lenguaje del código: Kotlin (kotlin)

Como ves, la construcción del String con múltiples líneas conserva la sangría y espacios de origen.

Para eliminarlos usa la función trimMargin(), la cual usa como referencia el prefijo '|' como delimitador de las márgenes:

fun main() { // raw string val welcomeText = """ |¡Bienvenido a la guía de Kotlin de develou.com! |En esta serie de tutoriales aprenderás |los conceptos básicos sobre el lenguaje |y las herramientas necesarias para probarlo """.trimMargin() println(welcomeText) }
Lenguaje del código: Kotlin (kotlin)

Salida:

¡Bienvenido a la guíaa de Kotlin de develou.com! En esta serie de tutoriales aprenderáss los conceptos básicoss sobre el lenguaje y las herramientas necesarias para probarlo
Lenguaje del código: Kotlin (kotlin)

Plantillas De Strings En Kotlin

En Kotlin es posible crear expresiones interpoladas sobre Strings o también conocidas como la sintaxis de plantillas de Strings (String Templates).

La interpolación te permite concatenar literales junto a fragmentos de expresiones antecedidas por el símbolo '$'. Hay dos formas de hacerlo:

  • $id, donde id es un identificador simple
  • ${e}, donde e es una expresión valida en Kotlin

Veamos un ejemplo de un identificador simple:

fun main() { val playerName = "NKiller" println("Tu nuevo nombre es $playerName") }
Lenguaje del código: Kotlin (kotlin)

Salida:

Tu nuevo nombre es NKiller

Como ves, el fragmento interpolado $playerName es convertido a String y el resultado final es la concatenación de todos los fragmentos.

En el caso de las expresiones, debes usar llaves ({}) para encerrar la expresión. De esa forma el resultado sigue el mismo de conversión a String y es aplicado a la concatenación final:

fun main() { println("Tamaño del nick:${playerName.length}") }
Lenguaje del código: Kotlin (kotlin)

Salida:

Tamaño del nick:7
Lenguaje del código: CSS (css)

La expresión final de acceso ${playerName.length} es resuelta primero accediendo al entero 7 y luego se convierte a través del método toString().

Este tipo de plantillas te permitirá incluir todo tipo de expresiones como operaciones aritméticas, acceso a métodos, ejecución de funciones, etc.

¿Ha sido útil esta publicación?