Conversión de tipo Kotlin

La conversión de tipos (también llamada conversión de tipos) se refiere a cambiar la entidad de una variable de tipo de datos a otro tipo de datos. Como sabemos, Java admite la conversión implícita de tipos de tipos de datos más pequeños a más grandes. Se puede asignar un valor entero al tipo de datos largo. Por ejemplo: 

Java

public class TypecastingExample { 
   public static void main(String args[]) { 
      byte p = 12; 
      System.out.println("byte value : "+p); 
                                                  // Implicit Typecasting 
      long q = p;                                  // integer value can be assigned
                                                 // to long data type   
   }
 }

Pero, Kotlin no admite la conversión de tipos implícita. No se puede asignar un valor entero al tipo de datos largo.  

var myNumber = 100
var myLongNumber: Long = myNumber       // Compiler error
// Type mismatch: inferred type is Int but Long was expected

En Kotlin, la función auxiliar se puede usar para convertir explícitamente un tipo de datos en otro tipo de datos. 

Ejemplo: 

var myNumber = 100
var myLongNumber: Long = myNumber.toLong()     // compiles successfully

La siguiente función auxiliar se puede utilizar para convertir un tipo de datos en otro:  

  • aByte() 
  • a corto() 
  • aInt() 
  • aLargo() 
  • flotar() 
  • para duplicar() 
  • toChar() 

Nota: No hay ninguna función auxiliar disponible para convertir a tipo booleano.

Conversión de tipo de datos más grande a más pequeño

var myLongNumber = 10L
var myNumber2: Int = myLongNumber1.toInt()

Programa Kotlin para convertir un tipo de datos en otro:  

Kotlin

fun main(args: Array<String>)
{
    println("259 to byte: " + (259.toByte()))
    println("50000 to short: " + (50000.toShort()))
    println("21474847499 to Int: " + (21474847499.toInt()))
    println("10L to Int: " + (10L.toInt()))
    println("22.54 to Int: " + (22.54.toInt()))
    println("22 to float: " + (22.toFloat()))
    println("65 to char: " + (65.toChar()))
    println("A to Int: " + ('A'.toInt()))
}

Producción: 

259 to byte: 3
50000 to short: -15536
21474847499 to Int: 11019
10L to Int: 10
22.54 to Int: 22
22 to float: 22.0
65 to char: A
A to Int: 65

Publicación traducida automáticamente

Artículo escrito por Praveenruhil 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 *