Pembolehubah Kotlin dan Jenis Asas

Dalam tutorial ini, anda akan belajar mengenai pemboleh ubah, cara membuatnya, dan jenis data asas yang disokong oleh Kotlin untuk membuat pemboleh ubah.

Seperti yang anda ketahui, pemboleh ubah adalah lokasi di memori (kawasan penyimpanan) untuk menyimpan data.

Untuk menunjukkan kawasan penyimpanan, setiap pemboleh ubah harus diberi nama unik (pengecam). Ketahui lebih lanjut mengenai Bagaimana menamakan pemboleh ubah di Kotlin?

Bagaimana untuk menyatakan pemboleh ubah di Kotlin?

Untuk menyatakan pemboleh ubah di Kotlin, salah satu varatau valkata kunci digunakan. Berikut adalah contoh:

 bahasa var = "Perancis" skor val = 95

Perbezaan penggunaan var dan val dibincangkan kemudian dalam artikel. Buat masa ini, mari kita fokus pada deklarasi pemboleh ubah.

Di sini, bahasa adalah pemboleh ubah jenis String, dan scorepemboleh ubah jenis Int. Anda tidak perlu menentukan jenis pemboleh ubah; Kotlin secara tidak langsung melakukannya untuk anda. Penyusun mengetahui ini dengan ungkapan inisialisasi ("Perancis" adalah String, dan 95 adalah nilai integer dalam program di atas). Ini dipanggil inferens jenis dalam pengaturcaraan.

Walau bagaimanapun, anda boleh menentukan jenisnya secara jelas jika anda mahu:

 bahasa var: String = "Perancis" skor val: Int = 95

Kami telah memulakan pemboleh ubah semasa pengisytiharan dalam contoh di atas. Walau bagaimanapun, ia tidak perlu. Anda boleh menyatakan pemboleh ubah dan menentukan jenisnya dalam satu pernyataan, dan memulakan pemboleh ubah dalam pernyataan lain kemudian dalam program.

 bahasa var: String // pengisytiharan pemboleh ubah jenis String… bahasa = “Perancis” // pemboleh ubah permulaan nilai skor: Int // pemboleh ubah deklarasi jenis Int… skor = 95 // pemboleh ubah permulaan 

Berikut adalah beberapa contoh yang mengakibatkan kesilapan.

 bahasa var // Bahasa ralat = "Bahasa Perancis"

Di sini, jenis pemboleh ubah bahasa tidak dinyatakan secara eksplisit, dan pemboleh ubah tidak dimulakan semasa pengisytiharan.

 bahasa var: Bahasa rentetan = 14 // Kesalahan

Di sini, kami berusaha memberikan 14 (nilai integer) kepada pemboleh ubah dari pelbagai jenis ( String).

Perbezaan Antara var dan val

  • val (Rujukan tidak berubah) - Pemboleh ubah yang dinyatakan menggunakan valkata kunci tidak boleh diubah setelah nilai diberikan. Ia serupa dengan pemboleh ubah akhir di Jawa.
  • var (Rujukan berubah-ubah) - Pemboleh ubah yang dinyatakan menggunakan varkata kunci boleh diubah kemudian dalam program. Ia sesuai dengan pemboleh ubah Java biasa.

Berikut adalah beberapa contoh:

 bahasa var = "Perancis" bahasa = "Jerman" 

Di sini, languagepemboleh ubah ditugaskan semula ke bahasa Jerman. Oleh kerana, pemboleh ubah dinyatakan menggunakan var, kod ini berfungsi dengan sempurna.

 bahasa val = bahasa "Perancis" = "Jerman" // Kesalahan

Anda tidak boleh menetapkan semula pemboleh ubah bahasa Germanpada contoh di atas kerana pemboleh ubah dinyatakan menggunakan val.

Sekarang, anda tahu apa itu pemboleh ubah Kotlin, sudah waktunya untuk mempelajari nilai yang berbeza yang boleh diambil oleh pemboleh ubah Kotlin.

Jenis-Jenis Asas Kotlin

Kotlin adalah bahasa yang ditaip secara statik seperti Java. Iaitu, jenis pemboleh ubah diketahui semasa waktu penyusunan. Sebagai contoh,

 bahasa val: Tanda nilai int = 12.3

Di sini, penyusun tahu bahawa bahasa adalah jenis Int, dan tanda adalah jenis Doublesebelum masa penyusunan.

Jenis bawaan di Kotlin dapat dikategorikan sebagai:

  • Nombor
  • Watak
  • Booleans
  • Susunan

Jenis Nombor

Nombor di Kotlin serupa dengan Java. Terdapat 6 jenis terbina dalam yang mewakili nombor.

  • Bait
  • Pendek
  • Int
  • Lama
  • Terapung
  • Berganda

1. Bait

  • Yang Bytejenis data boleh mempunyai nilai-nilai dari -128 kepada 127 (8-bit menandatangani dua ini integer pelengkap).
  • Ia digunakan sebagai Intpengganti atau jenis data bilangan bulat lain untuk menyimpan memori jika yakin bahawa nilai pemboleh ubah akan berada dalam (-128, 127)
  • Contoh:
     fun main(args : Array) ( val range: Byte = 112 println("$range") // The code below gives error. Why? // val range1: Byte = 200 )

Semasa anda menjalankan program, outputnya adalah:

 112

2. Pendek

  • Yang Shortjenis data boleh mempunyai nilai -32.768-32.767 (16-bit menandatangani dua ini integer pelengkap).
  • Ia digunakan sebagai ganti jenis data integer lain untuk menyimpan memori jika yakin bahawa nilai pemboleh ubah akan berada dalam (-32768, 32767).
  • Contoh:
 fun main(args : Array) ( val temperature: Short = -11245 println("$temperature") )

Semasa anda menjalankan program, outputnya adalah:

 -11245

3. Int

  • Yang Intjenis data boleh mempunyai nilai-nilai dari untuk (32-bit menandatangani dua ini integer pelengkap).-231231-1
  • Contoh:
 fun main(args : Array) ( val score: Int = 100000 println("$score") )

Semasa anda menjalankan program, outputnya adalah:

 100000

Sekiranya anda menetapkan bilangan bulat antara ke pemboleh ubah tanpa menyatakan jenisnya secara eksplisit, pemboleh ubah tersebut adalah jenis. Sebagai contoh,-231231-1Int

 fun main(args : Array) ( // score is of type Int val score = 10 println("$score") ) 

If you are using IntelliJ IDEA, you can place cursor inside the variable and press Ctrl + Shift + P to see its type.

4. Long

  • The Long data type can have values from -263 to 263-1 (64-bit signed two's complement integer).
  • Example:
 fun main(args : Array) ( val highestScore: Long = 9999 println("$highestScore") )

When you run the program, the output will be:

 9999

If you assign an integer value greater than 231-1 or less than -231 to a variable (without explicitly specifying its type), the variable will be of Long type. For example,

 val distance = 10000000000 // distance variable of type Long 

Similarly, you can use capital letter L to specify that the variable is of type Long. For example,

 val distance = 100L // distance value of type Long

5. Double

  • The Double type is a double-precision 64-bit floating point.
  • Example:
 fun main(args : Array) ( // distance is of type Double val distance = 999.5 println("$distance") ) 

When you run the program, the output will be:

 999.5

Float

  • The Float data type is a single-precision 32-bit floating point. Learn more about single precision and double precision floating point if you are interested.
  • Example:
 fun main(args : Array) ( // distance is of type Float val distance = 19.5F println("$distance") ) 

When you run the program, the output will be:

 19.5

Notice that, we have used 19.5F instead of 19.5 in the above program. It is because 19.5 is a Double literal, and you cannot assign Double value to a variable of type Float.

To tell compiler to treat 19.5 as Float, you need to use F at the end.

If you are not sure what number value a variable will be assigned in the program, you can specify it as Number type. This allows you to assign both integer and floating-point value to the variable (one at a time). For example:

 fun main(args : Array) ( var test: Number = 12.2 println("$test") test = 12 // Int smart cast from Number println("$test") test = 120L // Long smart cast from Number println("$test") ) 

When you run the program, the output will be:

 12.2 12 120

To learn more, visit: Kotlin smart casts

Char

To represent a character in Kotlin, Char types are used.

Unlike Java, Char types cannot be treated as numbers. Visit this page to learn more about Java char Type.

 fun main(args : Array) ( val letter: Char letter = 'k' println("$letter") ) 

When you run the program, the output will be:

 k 

In Java, you can do something like:

 char letter = 65;

However, the following code gives error in Kotlin.

 var letter: Char = 65 // Error

Boolean

  • The Boolean data type has two possible values, either true or false.
  • Example:
 fun main(args : Array) ( val flag = true println("$flag") )

Booleans are used in decision making statements (will be discussed in later chapter).

Kotlin Arrays

Array adalah wadah yang menyimpan data (nilai) satu jenis tunggal. Contohnya, anda boleh membuat tatasusunan yang dapat menyimpan 100 nilai Intjenis.

Di Kotlin, tatasusunan diwakili oleh Arraykelas. Kelas mempunyai getdan setfungsi, sizeharta benda, dan beberapa fungsi anggota berguna yang lain.

Untuk mengetahui secara terperinci mengenai tatasusunan, lawati: Kotlin Arrays

Rentetan Kotlin

Di Kotlin, rentetan diwakili oleh Stringkelas. Huruf rentetan seperti "ini adalah rentetan" dilaksanakan sebagai contoh kelas ini.

Untuk mengetahui secara terperinci mengenai tali, kunjungi: Kotlin Strings

Bacaan yang Disyorkan

  • Penukaran jenis di Kotlin
  • Pelakon pintar di Kotlin
  • Jenis Kotlin yang boleh dibatalkan

Artikel menarik...