Kotlini tüübi teisendamine

Selles artiklis saate teada tüüpi teisendamise kohta; kuidas teisendada ühe tüübi muutuja teiseks näite abil.

Kotlinis ei teisendata ühe tüübi arvväärtust automaatselt teiseks, isegi kui teine ​​tüüp on suurem. See erineb sellest, kuidas Java käsitleb numbrilisi teisendusi. Näiteks;

Java keeles

int arv1 = 55; pikk arv2 = arv1; // Kehtiv kood

Siin väärtus number1tüüpi intteisendatakse automaatselt tüüp longja määratud muutuja numbritega2.

Kotlinis,

 val number1: Int = 55 val number2: pikk = number1 // Viga: tüübi mittevastavus.

Kuigi Intpikkuse suurus on suurem kui , ei teisenda Kotlin Int-d automaatselt pikaks.

Selle asemel peate kasutama toLong()selgesõnaliselt (teisendamiseks tüübiks Long). Kotlin teeb seda tüüpi ohutuse tagamiseks, et vältida üllatusi.

 val number1: Int = 55 val number2: pikk = number1.toLong ()

Siin on loetelu Kotlini funktsioonidest, mida kasutatakse tüübi teisendamiseks:

  • toByte()
  • toShort()
  • toInt()
  • toLong()
  • toFloat()
  • toDouble()
  • toChar()

Pange tähele, et Booleantüüpide teisendamist ei toimu .

Teisendamine suuremast väiksemaks

Eelpool mainitud funktsioone saab kasutada mõlemas suunas (teisendamine suuremast väiksemaks ja teisendamine väiksemast suuremaks).

Suuremast väiksemaks muutmine võib aga väärtust kärpida. Näiteks,

 fun main(args : Array) ( val number1: Int = 545344 val number2: Byte = number1.toByte() println("number1 = $number1") println("number2 = $number2") )

Programmi käivitamisel on väljund järgmine:

 number1 = 545344 number2 = 64 

Vaadake ka neid tüüpi teisendamisega seotud artikleid:

  • Stringi int-le ja Int-stringi teisendamine
  • Pikk kuni keskmine ja keskmine kuni pikk teisendamine
  • Double to Int ja Int to Double Conversion
  • Pikk-topelt ja kahekordne-pikk konversioon
  • Char kuni Int ja Int kuni Char
  • String pikaks ja pikk-stringiks teisendamine
  • String massiivi ja massiivi stringi teisendamine
  • String booleaniks ja booleanist stringi teisenduseks
  • String baitini ja baidist stringi teisendamiseni
  • Int-baiti ja bait-int teisendamine

Huvitavad Artiklid...