Data types atau tipe data adalah sebuah pengklasifikasian data berdasarkan jenis data tersebut. Untuk mengembangkan sebuah program, ada beberapa tipe data yang akan kita pelajari. Di antaranya adalah CharacterStringArrayNumbers dan Booleans. Semuanya akan kita bahas sejelas dan sesederhana mungkin di dalam sub-modul ini.

Namun sebelumnya, ada satu hal yang kita perlu tahu terlebih dahulu, yaitu Variabel. Umumnya variabel digunakan untuk menyimpan informasi atau nilai yang akan dikelola di dalam sebuah program. Sebuah variabel akan membutuhkan kata kunci var atau val, identifiertype dan initialization. Kira-kira strukturnya seperti berikut:

1. var identifier: Type = initialization

Berikut adalah contoh variabel dengan tipe String:

1. var company: String = "Dicoding"

Mari kita ulas setiap bagian pada struktur variabel di atas.

Tipe data juga menentukan operasi apa saja yang dapat dilakukan pada sebuah variabel dan bagaimana nilai dari sebuah variabel disimpan. Contoh, ketika kita menggunakan operator + terhadap dua variabel yang bertipe String seperti berikut:

1. fun main() { 2.     val firstWord = "Dicoding " 3.     val lastWord = "Academy" 4.     print(firstWord + lastWord) 5. } 6. /* 7.    output: Dicoding Academy 8. */

Maka kedua nilai dari variabel firstWord dan lastWord akan digabungkan menjadi satu nilai. Berbeda ketika kita menggunakan operator + pada variabel yang bertipe Int seperti berikut:

1. fun main() { 2.     val valueA: Int = 10 3.     val valueB = 20 4.     print(valueA + valueB) 5. } 6. /* 7.    output: 30 8. */

Kompiler akan menjalankan operasi aritmatika, seperti pada contoh di atas di mana nilai dari variabel valueA dan valueB akan dijumlahkan lalu menghasilkan nilai baru.