Ejemplos Kotlin Para Inspirarse


    En la búsqueda de perfeccionar la manera en la que programamos, llega Kotlin, con un lenguaje sencillo, que se adapta a nuestras necesidades. Pero hoy, lo vamos a llevar a la práctica, con fáciles ejemplos de su aplicación, para que tomes ideas y las utilices en tus proyectos android. 



  • Crear una lista de personas, con su nombre y edad. Seleccionar ¿quién es la mayor?
     Primero, debemos crear la clase persona, en la que vamos a declarar el nombre como una variable de tipo string y la edad como una variable de tipo entero y vacía. Luego, creamos en el main la lista de personas, conjunto a la edad de cada una. Como el objetivo es saber quién es la persona mayor, vamos a crear una variable que se llame "mayor" y le asignamos que guarde el máximo valor que encuentre al leer los datos guardados en edad. Y para finalizar, un imprimir línea, para ver el resultado. El código sería así:


  data class Persona(val nombre: String, val edad: Int? = null)
  fun main(args: Array<String>)
 { val personas = listOf(Persona("Alicia", edad = 47),
                                      Persona("Bob", edad = 29),
                                      Persona("Maria", edad = 76),
                                      Persona("Pedro", edad = 34))
  val mayor = personas.maxBy { it.edad ?: 0 }
  println("¿Quien es el mayor?: $mayor") }
  //ingenieradeideas.blogspot.com

    He aquí una muestra de cómo se ha compilado el código, haciendo uso del Editor Kotlin Online:




   Y si buscamos la menor persona, lo único que debemos crear es una nueva variable llamada menor pero, el llamado se hace a ".minBy". Quedando de la siguiente manera:



    val menor = personas.minBy { it.edad ?: 0 }
    println("¿Quien es el menor?: $menor")




  • Si queremos buscar dentro de la lista a una persona. 
     Primero, al igual que en el ejemplo anterior, debemos crear la clase persona y seguido, definir la lista. Pero en este caso, realizaremos un método llamado "BuscarPersona" para asignarle el nombre que va a buscar dentro de la lista e imprimirlo. El código quedaría de la siguiente manera: 




   Ahora bien, Tomasz Czura en su artículo Introducción a Kotlin: Programación de Android Para Seres Humanos, enumera las principales características de Kotlin, para tomar en cuenta a la hora de desarrollar un proyecto Android, estas son:



  • Variables Mutables e Inmutables: si queremos que una variable sea inmutable (en muchos casos deberíamos), usamos val (como valor, no variable):


val inmutable: Int = 1


  •  Extensiones: podemos "extender" las clases existentes, incluso cuando son finales o no tenemos acceso a su código fuente. Por ejemplo, para obtener un valor de cadena de texto de edición, en lugar de escribir cada vez editText.text.toString() podemos escribir la función:


fun EditText.textValue(): String { return text.toString() }

Y ahora con cada instancia de EditText:



editText.textValue()


  • Sobrecarga del Operador: es útil si queremos agregar, multiplicar o comparar objetos. Kotlin permite la sobrecarga de: operadores binarios, operadores de matriz, y de operaciones iguales y de unarios.   

    Y si te ha gustado tanto como a mi, empezar en el mundo Kotlin, te invito a explorar el artículo completo de  Tomasz CzuraIntroducción a Kotlin: Programación de Android Para Seres Humanos, donde muestra paso a paso cómo programó una pantalla de usuario. 







Anuncio

Comentarios

  1. Hola, en mi intento por hacer un programa que determine el menor de 3 numeros (estoy comenzando desde cero) dados por teclado, asi que opte por hacerlo con un arreglo, lo cual no me salió. ¿tu como lo harias?


    Lo que hice fue esto =P :


    fun menor() {
    println("Introduce el primer numero")
    val a = readLine()!!.toInt()
    println("Introduce el segundo valor")
    val b = readLine()!!.toInt()
    println("Introduce el tercer valor")
    val c = readLine()!!.toInt()

    var arrayEnteros = intArrayOf(a, b, c)

    for ((i,j) in arrayEnteros.withIndex())
    {
    var contenedor = i

    if (contenedor < arrayEnteros.get(i))
    {
    println("El menor es: $contenedor en la posicion $i")
    }

    }

    }

    ********************************************************************

    Lo cual imprime:


    Introduce el primer numero
    4
    Introduce el segundo valor
    5
    Introduce el tercer valor
    6
    El menor es: 0 en la posicion 0
    El menor es: 1 en la posicion 1
    El menor es: 2 en la posicion 2

    ¡De antemano gracias!

    ResponderEliminar
  2. fun main(parametro: Array) {
    print("Ingrese primer valor:")
    val valor1 = readLine()!!.toInt()
    print("Ingrese segundo valor:")
    val valor2 = readLine()!!.toInt()
    print("Ingrese segundo valor:")
    val valor3 = readLine()!!.toInt()
    val valor = if (valor1 < valor2) valor1 else valor2
    val menor =if (valor < valor3) valor else valor3
    println("El menor entre $valor1 y $valor2 y $valor3 es $menor")
    }

    ResponderEliminar

Publicar un comentario