Function Return Type
Return Type adalah tipe data dari nilai yang dikembalikan oleh sebuah function.
Function tidak hanya dapat menjalankan suatu proses, tetapi juga dapat menghasilkan sebuah nilai yang kemudian digunakan oleh kode lain.
Contohnya, sebuah function dapat mengembalikan:
IntStringDoubleBoolean- dan tipe data lainnya.
Sintaks Function dengan Return Type
Bentuk umum:
fun namaFunction(parameter: TipeData): TipeReturn {
// proses
return nilai
}
Perhatikan bagian:
: TipeReturn
Bagian tersebut digunakan untuk menentukan tipe data nilai yang dikembalikan oleh function.
Sedangkan:
return nilai
digunakan untuk mengembalikan nilai tersebut.
Contoh Function Mengembalikan Int
Contoh function yang mengembalikan nilai Int:
fun penjumlahan(a: Int, b: Int): Int {
val total = a + b
return total
}
Function tersebut memiliki return type:
Int
Artinya, function penjumlahan() harus mengembalikan nilai bertipe Int.
Pada bagian:
val total = a + b
hasil penjumlahan disimpan ke dalam variable total.
Kemudian:
return total
mengembalikan nilai tersebut kepada pemanggil function.
Memanggil Function Return Type
Function dapat dipanggil dan hasilnya disimpan ke dalam variable.
Contoh:
val jumlahkan = penjumlahan(10, 50)
println(jumlahkan)
Prosesnya:
10 + 50 = 60
Sehingga nilai jumlahkan adalah:
60
Output:
60
Langsung Menggunakan Hasil Return
Nilai yang dikembalikan function juga dapat langsung digunakan tanpa menyimpannya ke variable.
Contoh:
println(penjumlahan(20, 30))
Function:
penjumlahan(20, 30)
menghasilkan:
50
Sehingga output:
50
Contoh Function Pembagian
Kita juga dapat membuat function yang mengembalikan hasil pembagian.
fun pembagian(a: Int, b: Int): Int {
if (b == 0) {
return 0
} else {
val total = a / b
return total
}
}
Function tersebut memiliki return type:
Int
Artinya semua jalur pada function harus mengembalikan nilai bertipe Int.
Menggunakan return pada if
Pada function pembagian(), terdapat kondisi:
if (b == 0) {
return 0
}
Jika nilai b adalah 0, function langsung mengembalikan nilai:
0
Hal ini mencegah proses pembagian dengan angka 0.
Jika b bukan 0, bagian else dijalankan:
else {
val total = a / b
return total
}
Contoh Pemanggilan Function Pembagian
Contoh:
val bagikan = pembagian(50, 2)
println(bagikan)
Perhitungannya:
50 / 2 = 25
Output:
25
Function juga dapat langsung digunakan:
println(pembagian(300, 30))
Perhitungannya:
300 / 30 = 10
Output:
10
Contoh Ketika Pembagi Bernilai 0
Jika kita memanggil:
println(pembagian(100, 0))
Kondisi:
if (b == 0)
bernilai true.
Function akan menjalankan:
return 0
Output:
0
Dengan demikian, function tidak melakukan operasi:
100 / 0
Contoh Program Lengkap
Berikut contoh lengkap function dengan return type:
// Function mengembalikan nilai Int
fun penjumlahan(a: Int, b: Int): Int {
val total = a + b
return total
}
// Function mengembalikan nilai Int
fun pembagian(a: Int, b: Int): Int {
if (b == 0) {
return 0
} else {
val total = a / b
return total
}
}
fun main() {
val jumlahkan = penjumlahan(10, 50)
println(jumlahkan)
println(penjumlahan(20, 30))
val bagikan = pembagian(50, 2)
println(bagikan)
println(pembagian(300, 30))
}
Output:
60
50
25
10
Return Type String
Return type tidak hanya dapat berupa Int.
Function juga dapat mengembalikan String.
Contoh:
fun sayHello(name: String): String {
return "Hello $name"
}
Pemanggilan:
val message = sayHello("Ucup")
println(message)
Output:
Hello Ucup
Return Type Boolean
Function juga dapat mengembalikan Boolean.
Contoh:
fun isLulus(nilai: Int): Boolean {
return nilai >= 75
}
Pemanggilan:
println(isLulus(80))
Output:
true
Contoh:
println(isLulus(60))
Output:
false
Return Type Double
Function dapat mengembalikan nilai Double.
Contoh:
fun luasLingkaran(radius: Double): Double {
return 3.14 * radius * radius
}
Pemanggilan:
println(luasLingkaran(7.0))
Output:
153.86
Return Type Harus Sesuai
Jika function didefinisikan memiliki return type Int:
fun penjumlahan(a: Int, b: Int): Int {
return a + b
}
Maka function tersebut harus mengembalikan nilai Int.
Contoh yang benar:
return a + b
Contoh yang tidak sesuai:
return "Hello"
Karena "Hello" merupakan String, bukan Int.
Return Type dan return
Perhatikan hubungan berikut:
fun penjumlahan(a: Int, b: Int): Int {
return a + b
}
:Int
↓
Menentukan tipe nilai yang dikembalikan
return
↓
Mengembalikan nilai dari function
Jadi, : Int dan return memiliki fungsi yang berbeda.
: Int menentukan tipe return, sedangkan return mengembalikan nilai.
Kesimpulan
Return Type digunakan untuk menentukan tipe data nilai yang dikembalikan oleh sebuah function.
Contoh:
fun penjumlahan(a: Int, b: Int): Int {
val total = a + b
return total
}
Pada contoh tersebut:
: Int
menunjukkan bahwa function mengembalikan nilai bertipe Int.
Sedangkan:
return total
mengembalikan nilai hasil penjumlahan.
Function yang memiliki return type dapat digunakan seperti:
val jumlahkan = penjumlahan(10, 50)
atau langsung:
println(penjumlahan(20, 30))
Selain Int, function dapat mengembalikan berbagai tipe data seperti:
String
Boolean
Double
Jadi, prinsip sederhananya:
Return Type menentukan tipe data yang dikembalikan oleh function, sedangkan return digunakan untuk mengembalikan nilai tersebut kepada pemanggil function.