Variabel dan Tipe Data Kotlin

Muhammad Fajri
Friday, 09 April 2021

Bismillahirrahmanirrahim.

Di artikel sebelumnya, kita telah memahami komponen atau struktur program Kotlin. Di artikel ini kita akan mengenal variabel dan tipe data yang ada pada Kotlin.

Variabel dan Tipe Data

Variabel merupakan simbol yang digunakan untuk menyimpan sebuah nilai. Tipe data adalah jenis nilai yang akan disimpan pada sebuah variabel. Variabel dibuat dengan mendeklarasikan identifier (peubah) menggunakan kata kunci var atau val diikuti dengan tipe datanya.

Kotlin mendukung 2 jenis variabel yaitu:

  • Mutable, variabel yang dapat diubah (diberikan ulang nilai). Kata kunci yang digunakan adalah var.
  • Immutable, variabel yang tidak dapat diubah (nilainya tidak dapat diganti). Kata kunci yang digunakan adalah val.

Pendeklarasian variabel:

var/val namaVariabel: TipeData = Nilai

Variabel dideklarasikan dengan menggunakan keyword var atau val. Nama variabel dibuat dengan pola camelCase yaitu nama variabel yang dibuat dengan huruf kecil pada kata pertama dan huruf awal kapital pada kata kedua dan seterusnya. Misalnya: nama, namaVariabel, namaVariabelSaya. Nama variabel ini dipisahkan dengan tanda colon atau titik dua. Contoh tipe data adalah String. Kemudian nilai dari variabel dipisahkan dengan tanda sama dengan. Nilai yang berupa string, diapit oleh tanda petik (tunggal/ ganda).

Cara di atas merupakan salah satu cara pendeklarasian identifier. Untuk memahami lebih lanjut, bagian berikutnya kita masuk pada bagian pembuatan variabel.

Membuat Variabel

Sebelum membuat variabel, kita pahami dulu aturan penulisan sebuah variabel. Selain yang disebutkan pada pada bagian sebelumnya, terdapat hal-hal lain yang perlu diperhatikan. Berikut aturan penulisan variabel.

  • Variabel dapat dimulai dengan huruf atau garis bawah (underscore).
  • Tidak boleh dimulai dengan simbol atau angka.
  • Jika nama variabel terdiri dari dua kata atau lebih, penulisannya mengikuti pola camelCase. Misalnya namaVariabel.
  • Nama variabel tidak boleh dipisah dengan spasi, kembali mengikuti pola camelCase.

Beberapa aturan lainnya dapat dilihat pada contoh pembuatan variabel berikut.

  1. Membuat variabel kosong, tipe data harus dituliskan. Deklarasi dan inisialisasi dibuat secara tidak bersamaan.
    var namaLengkap: String // deklarasi
    namaLengkap = "Muhammad Fajri" // inisialisasi
    
  2. Membuat variabel dan langsung diberikan nilai, tipe data tidak wajib dituliskan karena sudah memiliki nilai
    // deklarasi sekaligus inisialisasi
    var alamat: String = "Makassar"
    var tanggalLahir = "01-01-2021" as string
    
  3. Membuat variabel tanpa menuliskan tipe data
    // deklarasi sekaligus inisialisasi
    var namaBarang = "Smartphone"
    var harga = 2500000
    var berat = 0.8
    

    Deklarasi: mendefinisikan variabel, inisialisasi: pemberian nilai

Cara yang sama untuk pendeklarasian variabel dengan kata kunci val.

Untuk menampilkan nilai dari variabel yang telah dibuat, kita panggil dalam sebuah method/ fungsi dengan nama println() atau print(). Misalnya dari contoh nomor tiga sebelumnya kita panggil nilai variabel dengan nama namaBarang, maka kita tuliskan:

println(namaBarang)

// membuat ouput dengan menambahkan keterangan
println("Nama barang: $namaBarang")

Penulisan lengkap dari program di atas menjadi:

fun main() {
    var = "Smartphone"

    println("Nama barang: $namaBarang")
}

Output dari baris perintah di atas yaitu:

Nama barang: Smartphone

Contoh lain:

fun main() {
    var nama = "Abdul"
    var umur = 20
    var alamat = "Makassar"

    println("Nama saya $nama, berumur $umur tahun.")
    println("Beralamat di $alamat")
}

Output:

Nama saya Abdul, berumur 20 tahun.
Beralamat di Makassar.

Perlu diperhatikan pada program di atas, untuk memanggil nilai sebuah variabel kita sertakan tanda $ (dollar) sebelum nama variabel tersebut. Hal ini berlaku pada variabel yang dipanggil pada output yang berada di dalam string.

Untuk pemanggilan variabel pada method output (println()), simbol tersebut tidak boleh disertakan karena akan menghasilkan error. Contoh seperti pada baris println(namaBarang) di atas.

Hal ini kita bahas lebih lanjut pada halaman berikut.

Keyword dan Identifier

Keyword merupakan bentuk reserved memiliki arti tertentu bagi compiler dan tidak dapat digunakan untuk membuat identifier oleh elemen program seperti class, nama variabel, nama fungsi dan interface. Kotlin memiliki keyword hard, soft dan modifier.

  1. Hard keyword selalu dinterpretasikan sebagai kata kunci dan tidak dapat digunakan sebagai identifier. Beberapa diantaranya break, class, continue, do, else, while, this, throw, try, super, dan when.
  2. Soft keyword bertindak sebagai reserved word dalam konteks yang pasti dimana ia diterapkan. Dengan kata lain, dapat digunakan sebagai identifier biasa. Beberapa diantaranya file, finally, get, import, receiver, set, constructor, delegate, get, by, dan where.
  3. Modifier keyword, bertindak sebagai reserved word dalam daftar deklarasi identifier. Dengan kata lain dapat digunakan sebagai identifier. Beberapa diantaranya abstract, actual, annotation, companion, enum, final, infix, inline, lateinit, operator, dan open.

Tipe Data

Tipe data biasanya dikaitkan dengan pembuatan variabel. Tipe data yang dimasukkan ke dalam variabel menunjukkan tipe data yang ditampung oleh variabel tersebut. Tipe data dalam Kotlin yaitu:

  1. Int, integer atau bilangan bulat. Contoh: 12, 1_000
  2. String, string atau teks. Contoh: “belajar kotlin asik”
  3. Float, bilangan pecahan atau desimal. Contoh 21.23, 1.3
  4. Double, bilangan pecahan dengan ukuran penyimpanan yang lebih besar dari Float.
  5. Boolean, tipe data yang hanya bernilai true dan false
  6. Char, karakter dan hanya menampung satu buah nilai. Contoh: ‘A’
  7. Unit, tipe data yang hanya punya satu nilai, yaitu: objekUnit. Tipe data ini mirip seperti void pada Java.

Penulisan nilai tipe data String dan Char masing-masing diapit oleh tanda petik. String diapit oleh tanda petik ganda dan Char diapit oleh tanda petik tunggal.

Untuk tipe data yang berupa bilangan dapat dilihat panjang bit-nya pada tabel berikut.

Tipe Data Panjang Bit
Double 64
Float 32
Long 64
Int 32
Short 16
Byte 8

Dalam menginisialisasi variabel yang berupa bilangan, secara default compiler akan mengenali variabel sebagai integer jika nilai yang diberikan merupakan bilangan bulat, dan sebagai double jika nilai yang diberikan berupa bilangan desimal. Untuk mengubah tipe datanya dapat menggunakan L postfix untuk long dan F untuk float.

Ini merupakan kemudahan yang diberikan oleh Kotlin untuk mengubah tipe data variabel dengan sengaja.

Contoh:

var a = 10L // a is a long literal, note the L postfix
var b = 2.54F // b is float literal

Untuk tipe data yang berupa angka, dapat disisipkan underscore (garis bawah) untuk memisah angka sesuai keperluan agar lebih mudah dibaca. Cara ini juga diperkenalkan pada Java versi 7.

Contoh:

var oneMillion = 1_000_000
var creditCardNumber = 1234_5678_9012_3456

Tipe Konversi Data

Konversi tipe data dilakukan untuk mendapatkan nilai yang akurat.

Contoh:

var a = 14
var b = 3
var c = a / b
print(c) // output 4

Hasil pada contoh di atas akan memberikan output bilangan bulat. Ini disebabkan oleh nilai yang diinisialisasikan pada variabel a dan b. Keduanya dikenali oleh compiler sebagai bilangan bulat meskipun tipe datanya tidak dituliskan. Ini dinamakan tipe data inference.

Dari contoh di atas, untuk memberikan output yang sesuai, maka harus dilakukan konversi tipe data. Untuk mengubah nilai integer menjadi float atau double, gunakan toFloat() dan toDouble().

var a = 14
var b = 3
var c = a.toFloat() / b.toFloat()
print(c) // output 4.66666

Konversi tipe data yang lain yaitu:

  1. toInt() untuk mengubah ke integer.
  2. toFloat() untuk mengubah ke float.
  3. toString() untuk mengubah ke string.
  4. toDouble() untuk mengubah ke double.
  5. toLong() untuk mengubah ke long integer.
  6. toShort() untuk mengubah ke short integer.
  7. toChar() untuk mengubah ke char (karakter).
  8. toByte()

Referensi

  1. Modul Pemrograman Mobile (Mobile Programming).
  2. Hagos, Ted. 2018. Learn Android Studio 3 with Kotlin: Efficient Android App Development. Apress: Manila.