Skip to main content

Unit Return Function

Unit adalah tipe return yang digunakan oleh function ketika function tersebut tidak mengembalikan nilai yang dapat digunakan oleh pemanggilnya.

Unit di Kotlin kurang lebih memiliki konsep yang mirip dengan void pada beberapa bahasa pemrograman lain.

Function dengan Return Type Unit

Kita dapat menuliskan Unit secara eksplisit pada function.

Contoh:

fun sayHello(): Unit {
println("Hello World")
}

Pada function tersebut:

: Unit

menunjukkan bahwa function sayHello() memiliki return type Unit.

Function tersebut hanya menjalankan:

println("Hello World")

dan tidak mengembalikan nilai seperti String, Int, atau Boolean.

Memanggil Function Unit

Function dapat dipanggil seperti function biasa:

fun sayHello(): Unit {
println("Hello World")
}

fun main() {
sayHello()
}

Output:

Hello World

Ketika sayHello() dipanggil, function menjalankan kode di dalam body-nya.

Unit sebagai Return Type Default

Dalam Kotlin, kita sebenarnya tidak wajib menuliskan : Unit.

Contoh:

fun sayHello() {
println("Hello World")
}

Kode tersebut sama dengan:

fun sayHello(): Unit {
println("Hello World")
}

Kotlin secara otomatis menganggap function tersebut memiliki return type Unit.

Jadi, kedua function berikut memiliki arti yang sama:

fun sayHello() {
println("Hello World")
}

dan:

fun sayHello(): Unit {
println("Hello World")
}

Perbandingan Unit dengan Return Value

Function Unit tidak mengembalikan nilai yang digunakan oleh pemanggil.

Contoh:

fun sayHello(): Unit {
println("Hello World")
}

Sedangkan function berikut mengembalikan nilai String:

fun getHello(): String {
return "Hello World"
}

Perbedaannya:

sayHello()

menjalankan proses

tidak mengembalikan nilai yang digunakan

getHello()

menghasilkan nilai

"Hello World"

Function Unit dengan Parameter

Function yang memiliki return type Unit tetap dapat memiliki parameter.

Contoh:

fun sayHello(name: String): Unit {
println("Hello $name")
}

Pemanggilan:

sayHello("Ucup")

Output:

Hello Ucup

Parameter digunakan untuk menerima data, sedangkan Unit menunjukkan bahwa function tidak mengembalikan nilai tertentu.

Unit dan println()

Function println() juga dapat digunakan di dalam function yang memiliki return type Unit.

Contoh:

fun printName(name: String): Unit {
println("Nama: $name")
}

Function tersebut bertugas menampilkan data.

Pemanggilan:

printName("Ucup")

Output:

Nama: Ucup

Tidak ada nilai yang dikembalikan untuk disimpan ke dalam variable.

Contoh Function Unit Lainnya

Contoh function untuk menampilkan pesan:

fun showMessage(): Unit {
println("Selamat datang")
}

Contoh function untuk mencetak data:

fun printData(name: String): Unit {
println("Nama: $name")
}

Contoh function untuk melakukan beberapa proses:

fun prosesData(): Unit {
println("Memulai proses")
println("Memproses data")
println("Proses selesai")
}

Semua function tersebut hanya menjalankan proses dan tidak mengembalikan nilai seperti Int, String, atau Boolean.

Contoh Program Lengkap

fun sayHello(): Unit {
println("Hello World")
}

fun sayHelloName(name: String): Unit {
println("Hello $name")
}

fun printMessage(message: String): Unit {
println(message)
}

fun main() {
sayHello()
sayHelloName("Ucup")
printMessage("Belajar Kotlin")
}

Output:

Hello World
Hello Ucup
Belajar Kotlin

Unit vs String Return

Perhatikan perbedaan berikut.

Menggunakan Unit

fun sayHello(): Unit {
println("Hello World")
}

Function langsung menjalankan proses.

Pemanggilan:

sayHello()

Menggunakan String

fun getHello(): String {
return "Hello World"
}

Nilai hasil function dapat disimpan:

val message = getHello()

println(message)

Output:

Hello World

Dengan String, function mengembalikan nilai yang dapat digunakan kembali oleh kode lain.

Kapan Menggunakan Unit?

Unit cocok digunakan ketika function hanya bertugas melakukan suatu tindakan atau proses.

Contohnya:

  • Menampilkan pesan.
  • Mencetak data.
  • Menampilkan informasi ke console.
  • Mengubah data.
  • Menjalankan suatu proses.
  • Menampilkan hasil ke layar.

Contoh:

fun printWelcome(): Unit {
println("Selamat datang di aplikasi")
}

Tidak diperlukan nilai return karena tujuan function hanya menampilkan pesan.

Kesimpulan

Unit adalah return type yang menunjukkan bahwa sebuah function tidak mengembalikan nilai yang dapat digunakan oleh pemanggilnya.

Contoh:

fun sayHello(): Unit {
println("Hello World")
}

Kita juga dapat menghilangkan Unit:

fun sayHello() {
println("Hello World")
}

Kotlin akan secara otomatis menganggap return type function tersebut sebagai Unit.

Jadi:

fun sayHello(): Unit {
println("Hello World")
}

sama dengan:

fun sayHello() {
println("Hello World")
}

Perbedaan utamanya dengan function yang memiliki return value adalah:

fun sayHello(): Unit {
println("Hello World")
}

hanya menjalankan proses, sedangkan:

fun getHello(): String {
return "Hello World"
}

menghasilkan nilai yang dapat digunakan oleh kode lainnya.

tip

Gunakan Unit ketika function hanya perlu menjalankan suatu proses tanpa mengembalikan nilai tertentu.