Μετατροπή τύπου Kotlin

Σε αυτό το άρθρο, θα μάθετε για τη μετατροπή τύπου. πώς να μετατρέψετε μια μεταβλητή ενός τύπου σε έναν άλλο με τη βοήθεια του παραδείγματος.

Στο Kotlin, μια αριθμητική τιμή ενός τύπου δεν μετατρέπεται αυτόματα σε άλλο τύπο ακόμα και όταν ο άλλος τύπος είναι μεγαλύτερος. Αυτό διαφέρει από τον τρόπο με τον οποίο η Java χειρίζεται τις αριθμητικές μετατροπές. Για παράδειγμα;

Στην Ιάβα,

int αριθμός1 = 55; μακρύς αριθμός2 = αριθμός1; // Έγκυρος κωδικός

Εδώ, η τιμή του number1τύπου intμετατρέπεται αυτόματα σε τύπο longκαι αντιστοιχεί σε μεταβλητό αριθμό2.

Στο Κότλιν,

 val number1: Int = 55 val number2: Long = number1 // Σφάλμα: τύπος αναντιστοιχίας.

Αν και το μέγεθος του Long είναι μεγαλύτερο από Int, το Kotlin δεν μετατρέπει αυτόματα το Int σε Long.

Αντ 'αυτού, πρέπει να χρησιμοποιήσετε toLong()ρητά (για να μετατρέψετε σε τύπο Long). Το Kotlin το κάνει για ασφάλεια τύπου για να αποφύγει εκπλήξεις.

 αριθμός val1: Int = 55 αριθμός val2: Long = number1.toLong ()

Ακολουθεί μια λίστα λειτουργιών στο Kotlin που χρησιμοποιούνται για τη μετατροπή τύπου:

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

Σημείωση, δεν υπάρχει μετατροπή για Booleanτύπους.

Μετατροπή από μεγαλύτερο σε μικρότερο τύπο

Οι παραπάνω λειτουργίες μπορούν να χρησιμοποιηθούν και στις δύο κατευθύνσεις (μετατροπή από μεγαλύτερο σε μικρότερο τύπο και μετατροπή από μικρότερο σε μεγαλύτερο τύπο).

Ωστόσο, η μετατροπή από μεγαλύτερο σε μικρότερο τύπο μπορεί να μειώσει την τιμή. Για παράδειγμα,

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

Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:

 αριθμός1 = 545344 αριθμός2 = 64 

Δείτε επίσης αυτά τα άρθρα που σχετίζονται με τη μετατροπή τύπου:

  • Συμβολοσειρά σε Int και Μετατροπή Int to String
  • Μετατροπή Long to Int και Μετατροπή Int to Long
  • Double to Int και Int to Double Conversion
  • Μετατροπή Long to Double και Μετατροπή Double to Long
  • Char σε Int και Int σε Char
  • Μετατροπή συμβολοσειράς σε μακροχρόνια και συμβολοσειρά σε σειρά
  • Συμβολοσειρά σε σειρά και μετατροπή από σειρά σε σειρά
  • Συμβολοσειρά σε Boolean και Boolean σε Συμβολοσειρά Μετατροπή
  • Συμβολοσειρά σε byte και μετατροπή συμβολοσειράς σε συμβολοσειρά
  • Int to Byte και Byte σε Int Μετατροπή

ενδιαφέροντα άρθρα...