Python & Kotlin
Tanto como o Python como Kotlin têm bastante parecenças entre si, podendo ser necessário acrescentar um indicador ou chavetas para delimitar os blocos de código. De seguida, mostra-se alguns exemplos de código que, quando executados, irão produzir o mesmo resultado em ambos os casos:
Python:
# Declaração de variáveis
a = 1
b = 2
# Declaração de funções/métodos
def soma (val1, val2):
return val1 + val2
# Mostrar o resultado
print(soma(a,b)) # a+b=3
Kotlin:
// Declaração de variáveis
var a : Int = 1
// É opcional indicar o seu tipo
var b = 2
// Declaração de funções/métodos
fun soma (val1:Int, val2:Int) : Int {
return val1 + val2
}
println(soma(a,b)) // a+b=3
Para for’s e if’s
Python:
# for’s
for i in range(100):
print(i)
# if’s
if (condition):
# verdadeiro
else:
# falso
Kotlin:
// for’s
for (i in 0..100) {
println(i)
}
// if’s
if (condition) {
// verdadeiro
} else {
// falso
}
Mapeamento de várias condições
Python prévio à versão 3.10
valor = 0
if (valor==0):
print("Zero")
elif (valor==1):
valor += 1
elif (valor==2):
do_something()
# ...
else:
print("Outra qualquer")
Pyhton 3.10 (os highlights pelos vistos ainda não funcionam pois esta versão é bastante recente)
valor = 0
match valor:
case 0:
print("Zero")
case 1:
valor += 1
case 2:
do_something()
# ...
case _:
print("Outra qualquer")
Kotlin
// when’s
var valor = 0
when(valor) {
0 -> println("Zero")
1 -> valor.inc()
2 -> {
// Se o statement for mais que uma linha de código,
// usar esta nomenclatura
doSomething()
}
// ...
else -> {
println("Outra qualquer")
}
}