Any, Nothing, dan Unit di Kotlin
Dalam postingan singkat ini, kita akan melihat beberapa tipe khusus di Kotlin. Tipe tersebut adalah Any, Nothing, dan Unit. Anda mungkin telah menggunakan sebagian atau semuanya tetapi mungkin tidak mengetahui perbedaan yang tepat di antara keduanya. Jika itu masalahnya maka baca terus!
Setiap
Dokumentasi resmi Anynegara bagian:
Root dari hierarki class Kotlin. Setiap class Kotlin memiliki Any sebagai superclass.
Ini berarti Anykelas induk dari setiap kelas yang Anda tentukan di Kotlin. Ini berarti jika Anda mengikuti rantai orang tua dari suatu kelas, Anda akhirnya akan berakhir di Any. Ini sama persis dengan Objectdi Jawa.
Berikut adalah definisi dari Any. Berdasarkan paragraf di atas dan definisi berikut, setiap kelas di Kotlin memiliki metode equals, hashCodedan toString.
public open class Any {
public open operator fun equals(other: Any?): Boolean
public open fun hashCode(): Int
public open fun toString(): String
}
Berdasarkan dokumentasi resmi dariNothing
Anda dapat menggunakan Tidak Ada untuk mewakili "nilai yang tidak pernah ada": misalnya, jika suatu fungsi memiliki tipe pengembalian Tidak ada, itu berarti tidak pernah kembali (selalu melontarkan pengecualian).
Sederhananya kita biasanya menggunakan Nothingsebagai tipe pengembalian dari suatu fungsi untuk menunjukkan bahwa fungsi tersebut selalu mengeluarkan pengecualian.
Berikut adalah definisi dari Nothing.
public class Nothing private constructor()
Contoh penggunaan Nothingis dalam errorfungsi yang merupakan bagian dari pustaka standar Kotlin:
public inline fun error(message: Any): Nothing = throw IllegalStateException(message.toString())
Satuan
Definisi dari Unitadalah sebagai berikut:
public object Unit {
override fun toString() = "kotlin.Unit"
}
Di Kotlin, tipe pengembalian default dari suatu fungsi berarti Unitbahwa jika Anda tidak menentukan tipe pengembalian suatu fungsi secara eksplisit, maka compiler Kotlin akan menggunakannya Unitsebagai tipe pengembalian.
Itu saja!

![Apa itu Linked List? [Bagian 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































