Kotlin Türü Dönüşümü

İçindekiler

Bu makalede, tür dönüştürme hakkında bilgi edineceksiniz; örnek yardımı ile bir türden bir değişkeni diğerine dönüştürme.

Kotlin'de, bir türün sayısal değeri, diğeri daha büyük olsa bile otomatik olarak başka bir türe dönüştürülmez. Bu, Java'nın sayısal dönüşümleri işleme biçiminden farklıdır. Örneğin;

Java'da

int sayı1 = 55; uzun sayı2 = sayı1; // Geçerli kod

Burada number1tipin intdeğeri otomatik olarak tipe dönüştürülür longve number2 değişkenine atanır.

Kotlin'de,

 val sayı1: Int = 55 değer sayı2: Uzun = sayı1 // Hata: tür uyuşmazlığı.

Long'un boyutu daha büyük olsa da IntKotlin, Int'i otomatik olarak Long'a dönüştürmez.

Bunun yerine, toLong()açıkça kullanmanız gerekir (Long türüne dönüştürmek için). Kotlin, sürprizlerden kaçınmak için bunu tip güvenliği için yapıyor.

 val numarası1: Int = 55 değer numarası2: Uzun = sayı1.toLong ()

Tür dönüşümü için kullanılan Kotlin'deki işlevlerin listesi:

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

Not, Booleantürler için dönüştürme yoktur .

Büyük Tipten Daha Küçük Türe Dönüşüm

Yukarıda bahsedilen işlevler her iki yönde de kullanılabilir (büyükten küçüğe dönüştürme ve küçükten büyüğe dönüştürme).

Ancak, büyükten küçüğe dönüştürme, değeri kısaltabilir. Örneğin,

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

Programı çalıştırdığınızda, çıktı:

 sayı1 = 545344 sayı2 = 64 

Ayrıca tür dönüştürme ile ilgili şu makalelere de göz atın:

  • String'den Int'e ve Int'den String'e Dönüştürme
  • Long'dan Int'e ve Int'den Long'a Dönüşüm
  • Double - Int ve Int - Double Dönüşümü
  • Uzuntan İkiye ve İkiye Uzun Dönüşüm
  • Char'dan Int'e ve Int'den Char'a
  • Dizeden Uzun ve Uzuntan Dizgeye Dönüştürme
  • Dizeden Diziye ve Diziden Dizeye Dönüştürme
  • String'den Boolean'a ve Boolean'dan String'e Dönüştürme
  • Dizeden Bayta ve Bayttan Dizeye Dönüştürme
  • Int'den Byte'a ve Byte'tan Int'e Dönüştürme

Ilginç makaleler...