Page cover

De Java a Kotlin

Kotlin son dos lenguajes clave en el ecosistema de desarrollo de Android, y aunque ambos se ejecutan en la Java Virtual Machine (JVM) y tienen compatibilidad mutua, presentan diferencias significativas en su enfoque y características.

Sintaxis básica

Punto y coma

En Kotlin no es necesario usar el símbolo ; al final de las sentencias

Java

System.out.println("hola");

Kotlin

print(hola)

Declaración de variables

La sintaxis de declaración de variables en Kotlin favorece el uso de la inferencia de tipos

Java

// Normalmente en Java se pone el tipo
String s = "Hola";
// También es posible la inferencia de tipos
var s2 = "mundo";

Kotlin

// Esta variable es de tipo String
var s = "Hola"
// Declaración con el tipo explícito
var s2: String = "mundo"

Declaración de constantes

La sintaxis de declaración de constantes en Kotlin es más concisa

Java

// Se usa la palabara reservada final
final String s = "Hola";

Kotlin

// Se utiliza val en lugar de var
val s = "Hola"

Verboso vs conciso

La sintaxis de Java se considera verbosa, es decir que para expresar algo hace falta escribir más código del que sería necesario en otros lenguajes concisos (como Kotlin).

Por ejemplo, veamos el clásico ejemplo Hello world

Java

HelloWorld.java
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello world!");
    }
}

Kotlin

HelloWorld.kt
fun main(args : Array<String>) {
    println("Hello, World!")
}

Instanciar objetos

En Kotlin ya no se utiliza la palabra reservada new

Java

Person person = new Person("Bob", "Esponja");

Kotlin

val person = Person("Bob", "Esponja");

Tipos básicos / primitivos

En Kotlin desaparece los tipos primitivos, lo cual simplifica considerablemente el sistema de tipos, ya que en este lenguaje todos los valores son objetos.

Java

int num1 = 3;
Integer num2 = 2;

int res = num1 + num2;

Kotlin

// num1 es de tipo Int
val num1 = 3
// num2 es de tipo Int
val num2 = 2
// res es de tipo Int
val res = num1 + num2;

Números enteros

Tipo
Tamaño (bits)
Valor mínimo
Valor máximo

Byte

8

-128

127

Short

16

-32768

32767

Int

32

-2,147,483,648 (-231)

2,147,483,647 (231 - 1)

Long

64

-9,223,372,036,854,775,808 (-263)

9,223,372,036,854,775,807 (263 - 1)

Números reales

Tipo
Tamaño
Mantisa
Exponente
Precisión (digitos)

Float

32

24

8

6-7

Double

64

53

11

15-16

Booleanos

El tipo Boolean sirve para representar valores booleanos

Caracteres

El tipo Char sirve para representar caracteres y String para cadenas de caracteres

Interpolacion de texto

La interpolación de texto en Kotlin es una forma conveniente de construir cadenas de texto dinámicamente, insertando valores de variables o expresiones directamente en una cadena. En lugar de concatenar con operadores como +, Kotlin permite insertar variables o expresiones dentro de las cadenas usando el símbolo $.

Para insertar una variable dentro de una cadena de texto, simplemente antepones el símbolo $ a la variable dentro de la cadena. Si necesitas evaluar una expresión más compleja, puedes utilizar ${}.

val nombre = "Ana"
val saludo = "Hola, $nombre!"
println(saludo) // Salida: Hola, Ana!

Interpolación con una expresión

val x = 5
val y = 10
val resultado = "La suma de $x y $y es ${x + y}"
println(resultado) // Salida: La suma de 5 y 10 es 15

Última actualización

¿Te fue útil?