¿Cómo escribir Check un objeto en Kotlin?

Kotlin es un lenguaje de programación de propósito general tipificado estáticamente desarrollado por JetBrains, que ha creado IDE de clase mundial como IntelliJ IDEA, PhpStorm, Appcode, etc. Fue presentado por primera vez por JetBrains en 2011 y es un nuevo lenguaje para JVM. Kotlin es un lenguaje orientado a objetos y un «lenguaje mejor» que Java, pero aún así es totalmente interoperable con el código Java. En este artículo, vamos a discutir cómo verificar el tipo de un objeto en Kotlin, antes de continuar, debe conocer algunos conceptos básicos como los conceptos básicos de Kotlin . A menudo, es necesario verificar si un objeto es de un tipo particular en tiempo de ejecución. Con Java, usamos una instancia de una palabra clave; con Kotlin, es la palabra clave ‘ es ‘.

Ejemplo

Veamos cómo verificar el tipo de un objeto en estos pasos:

1. Probemos un ejemplo muy básico, intentarlo es con una string y un entero.

En este ejemplo, verificaremos el tipo de una string y un entero:

Kotlin

fun main (args: Array<String>) {
  var a : Any = 1
  var b : Any = "1"
  if (a is String)
  println ("a = $a is String")
  else 
        println ("a = $a is not String")
   if (b is String)
        println ("b = $b is String")
   else 
     println ("b = $b is not String")
 }

Producción:

a = 1 is not String
b = 1 is String

2. De manera similar, podemos usar “ !is” para comprobar si el objeto no es de tipo String , así:

Kotlin

fun main (args: Array<String>) {
  var b : Any = 1
  if (b !is String) 
    println ("$b is not string")
  else 
    println ("$b is String")
}

Producción:

1 is not string

Si recuerdas cómo funciona when en Kotlin, no necesitamos poner la palabra clave is, porque Kotlin tiene una característica de smart cast y arroja un error si los objetos comparados no son del mismo tipo.

Básicamente, el operador is se usa para comprobar el tipo de objeto en Kotlin, y “ !is” es la negación del operador “ is” . El compilador de Kotlin realiza un seguimiento de los valores inmutables y los emite de forma segura donde sea necesario. Así es como funcionan los moldes inteligentes; “ es” es un operador de conversión seguro, mientras que un operador de conversión inseguro es el operador as.

Probemos un ejemplo con el operador » as» , que se usa para hacer castings en Kotlin. Es un operador de reparto inseguro. El siguiente ejemplo de código lanza ClassCastException porque no podemos convertir un número entero a String:

Kotlin

fun main (args: Array<String>) {
  var a : Any = 1
  var b = a as String
}

Producción:

ERROR

Por otro lado, el siguiente código se ejecuta con éxito debido a la variable a, que, al ser de cualquier tipo, se puede convertir a String:

Kotlin

fun main (args: Array<String>) {
  var a : Any = "1"
  var b = a as String
  println (b. length)
}

Producción:

1

Publicación traducida automáticamente

Artículo escrito por eralokyadav2019 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *