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