Home » Software » Sistem Operasi » Andoid » Kotlin : Tipe Data Pada Kotlin

Kotlin : Tipe Data Pada Kotlin

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Tipe Data Kotlin

Di Kotlin, jenis variabel ditentukan oleh nilainya:

Contoh

fun main() {
  val myNum = 2              // Int
  val myDoubleNum = 5.09      // Double
  val myLetter = 'y'          // Char
  val myBoolean = true        // Boolean
  val myText = "Future"        // String
  println(myNum)
  println(myDoubleNum)
  println(myLetter)
  println(myBoolean)
  println(myText)
}

Hasil :

2
5.09
y
true
Future

Namun, kita bisa belajar dari tutrial sebelumnya bahwa dimungkinkan untuk menentukan tipe jika kita ingin:

Contoh

fun main() {
  val myNum: Int = 2                // Int
  val myDoubleNum: Double = 5.09    // Double
  val myLetter: Char = 'Y'          // Char
  val myBoolean: Boolean = true     // Boolean
  val myText: String = "Future"      // String
  println(myNum)
  println(myDoubleNum)
  println(myLetter)
  println(myBoolean)
  println(myText)
}

Hasil :

2
5.09
y
true
Future

Terkadang kita harus menentukan jenisnya dan seringkali tidak. Paling penting adalah lebih baik untuk mengetahui apa yang diwakili oleh berbagai jenis tipe data.

Di Kotlin, semuanya adalah objek dalam arti bahwa kita dapat memanggil fungsi dan properti anggota pada variabel apa pun. Beberapa tipe dapat memiliki representasi internal khusus – misalnya, angka, karakter, dan boolean dapat direpresentasikan sebagai nilai primitif saat runtime – tetapi bagi pengguna mereka terlihat seperti kelas biasa.

Tipe data dibagi menjadi beberapa kelompok:

  1. Numbers
  2. Characters
  3. Boolean
  4. Strings
  5. Array

Numbers

Tipe number dibagi menjadi dua kelompok:

Tipe integer menyimpan bilangan bulat, positif atau negatif (seperti 123 atau -456), tanpa desimal. Jenis yang valid adalah Byte, Short, Int dan Long.

Tipe floating point mewakili angka dengan bagian pecahan, yang berisi satu atau lebih desimal. Ada dua jenis: Float dan Double.

Jika kamu tidak menentukan tipe untuk variabel numerik, maka akan dikembalikan sebagai Int untuk bilangan bulat dan Double untuk bilangan floating point.

Tipe Integer

Byte

Tipe data Byte dapat menyimpan bilangan bulat dari -128 hingga 127. Ini dapat digunakan sebagai ganti Int atau tipe integer lainnya untuk menghemat memori jika yakin bahwa nilainya akan berada dalam -128 dan 127:

Contoh

fun main() {
  val myNum: Byte = 100
  println(myNum)
}

Hasil :

100

Short

Tipe data Short dapat menyimpan bilangan bulat dari -32768 hingga 32767:

Contoh

fun main() {
  val myNum: Short = 5000
  println(myNum)
}

Hasil :

5000

Int

Tipe data Int dapat menyimpan bilangan bulat dari -2147483648 hingga 2147483647:

Contoh

fun main() {
  val myNum: Int = 100000
  println(myNum)
}

Hasil :

100000

Long

Tipe data Long dapat menyimpan bilangan bulat dari -9223372036854775808 hingga 9223372036854775808. Tipe ini digunakan ketika Int tidak cukup besar untuk menyimpan nilai. Secara opsional, kita dapat mengakhiri nilainya dengan “L”:

Contoh

fun main() {
  val myNum: Long = 15000000000L
  println(myNum)
}

Hasil :

15000000000L

Perbedaan Antara Int dan Panjang

Bilangan bulat adalah Int selama sampai dengan 2147483647. Jika melebihi itu, dapat didefinisikan sebagai Long:

Contoh

val myNum1 = 2147483647  // Int
val myNum2 = 2147483648  // Long

Hasil :

2147483647
2147483648

Tipe Floating Point

Tipe floating point dapat mewakili angka dengan desimal, seperti 9,99 atau 3,14515.

Float

Tipe data Float dapat menyimpan bilangan pecahan dari 3.4e−038 hingga 3.4e+038.
Catatan : Kamu harus mengakhiri nilainya dengan “F”:

Contoh

fun main() {
  val myNum: Float = 5.43F
  println(myNum)
}

Hasil :

5.43

Double

Tipe data Double dapat menyimpan bilangan pecahan dari 1.7e−308 hingga 1.7e+038:

Contoh

fun main() {
  val myNum: Double = 12.22
  println(myNum)
}

Hasil :

12.22

Lebih baik pakai Float atau Double?

Ketepatan nilai floating point menunjukkan berapa banyak digit nilai yang dapat dimiliki setelah titik desimal. Ketepatan Float hanya enam atau tujuh digit desimal, sedangkan variabel Double memiliki presisi sekitar 15 digit. Oleh karena itu lebih aman menggunakan Double untuk sebagian besar perhitungan.

Angka Ilmiah

Angka floating point juga bisa menjadi angka ilmiah dengan “e” atau “E” untuk menunjukkan kekuatan 10:

Contoh

fun main() {
  val myNum1: Float = 35E3F
  val myNum2: Double = 12E4
  println(myNum1)
  println(myNum2)
}

Hasil :

35000.0
120000.0

Boolean

Tipe data Boolean hanya dapat mengambil nilai true atau false:

Contoh

fun main() {
  val isKotlinFun: Boolean = true
  val isFishTasty: Boolean = false
  println(isKotlinFun)   // Outputs true
  println(isFishTasty)   // Outputs false
}

Hasil :

true
false

Nilai Boolean sebagian besar digunakan untuk pengujian bersyarat.

Character

Tipe data Char digunakan untuk menyimpan satu karakter. Nilai char harus diapit oleh tanda kutip tunggal, seperti ‘A’ atau ‘c’:

Contoh

fun main() {
  val myGrade: Char = 'D' 
  println(myGrade)
}

Hasil :

D

Tidak seperti di Java, kita tidak dapat menggunakan nilai ASCII untuk menampilkan karakter tertentu. Nilai 66 akan menampilkan “D” di Java, tetapi akan menghasilkan kesalahan di Kotlin:

Contoh

val myLetter: Char = 66
println(myLetter) // Error

Hasil :

Error!

String

Tipe data String digunakan untuk menyimpan urutan karakter (teks). Nilai string harus diapit oleh tanda kutip ganda:

Contoh

fun main() {
  val myText: String = "Hello World"
  System.out.println(myText)
}

Hasil :

Hello World

Array

Array digunakan untuk menyimpan beberapa nilai dalam satu variabel, alih-alih mendeklarasikan variabel terpisah untuk setiap nilai.

Tipe Conversion

Tipe Conversion adalah ketika kita akan mengonversi nilai dari satu tipe data ke tipe lain.

Di Kotlin, konversi tipe numerik berbeda dari Java. Misalnya, kita tidak bisa mengonversi tipe Int ke tipe Long dengan kode berikut:

Contoh

fun main() {  
  val x: Int = 5 
  val y: Long = x
  println(y)  
}

Hasil :

demo_type_conv.kt:3:17: error: type mismatch: inferred type is Int but Long was expected
  val y: Long = x
                ^

Untuk mengonversi tipe data numerik ke tipe lain, kita harus menggunakan salah satu fungsi berikut: toByte(), toShort(), toInt(), toLong(), toFloat(), toDouble() atau toChar():

Contoh

fun main() {  
  val x: Int = 4 
  val y: Long = x.toLong()
  println(y)  
}

Hasil :

4

Kita akan mempelajari beberapa tipe data lebih mendalam pada artikel selanjutnya!

You may also like