#17: Switch Expression - Belajar Golang Dari Dasar

By Rizky Kurniawan - July 5, 2022 ~2 mins read
Artikel ini merupakan bagian dari seri Belajar Golang Dari Dasar

Switch Expression

Switch expression adalah cara lain untuk melakukan percabangan di golang. Switch expression juga ada pada hampir semua bahasa pemrograman. Switch expression bisa dikatakan sebagai versi sederhana dari if expression. Switch expression digunakan untuk melakukan pengecekan kondisi pada suatu variabel. Sebagai contoh, kita bisa menggunakan switch expression untuk cek apakah variabel kategory sama dengan CAT1, sama dengan CAT2, atau CAT3.

Perhatikan contoh berikut ini.

package main

import "fmt"

func main() {
	var category = "CAT1"

	switch category {
	case "CAT1":
		fmt.Println("Kategori CAT1")
	case "CAT2":
		fmt.Println("Kategori CAT2")
	default:
		fmt.Println("Kategori tidak dikenali")
	}
}

output:

Kategori CAT1

Pada contoh kode diatas kita melakukan pengecekan pada variabel category. Maksud dari keyword case "CAT1" adalah jika variabel category sama dengan CAT1.

Keyword default pada switch expression fungsinya sama seperti else pada if expression. Kode dalam blok default akan dieksekusi apabila semua kondisi salah.

Short Statement Pada Switch Expression

Selain if expression, short statement juga dapat kita buat pada switch expression. Untuk cara membuatnya juga kurang lebih sama seperti pada if expression.

Perhatikan contoh berikut.

package main

import "fmt"

func main() {
	switch married := true; married {
	case true:
		fmt.Println("Sudah menikah")
	case false:
		fmt.Println("Belum menikah")
	}
}

output:

Sudah menikah

Pada contoh di atas, kita mendeklarasikan variabel married sebelum switch expression. Variabel inilah yang nantinya akan digunakan untuk pengecekan kondisi pada switch expression.

Kita tidak harus menggunakan keyword default karena variabel married bertipe data boolean yang mana nilanya hanya antara true atau false.

Switch Expression Tanpa Kondisi

Di golang, kondisi pada switch tidaklah wajib. Kita bisa memindahkan kondisi yang sebelumnya berada di keyword switch menjadi berada pada tiap keyword case. Dengan begitu, sekarang switch akan terlihat seperti if expression.

Untuk lebih jelasnya perhatikan contoh berikut.

package main

import "fmt"

func main() {
	id := "A1"
	switch {
	case id == "A1":
		fmt.Println("ID = A1")
	case id == "A2":
		fmt.Println("ID = A2")
	default:
		fmt.Println("ID Invalid")
	}
}

output:

ID = A1

Pada contoh kode di atas kita memindahkan pengecekan untuk variabel id ke setiap keyword case milik switch expression. Ini terlihat seperti if, else if, dan else expression.

Berikutnya: #18: For Loop - Belajar Golang Dari Dasar

Tags: #golang
Bagikan:

Ingin Berdiskusi?

Yuk bergabung di Grup Telegram Ruang Developer atau mulai diskusi melalui GitHub. See You!

Dapatkan contoh source code project backend, frontend, atau fullstack untuk kamu amati, tiru, dan modifikasi sesuka hati. Klik untuk melihat detail!
comments powered by Disqus

Berlangganan Gratis

Kamu akan menerima email update dari Ruang Developer

Beri Dukungan

Beri dukungan, dapatkan full source code project web untuk bahan referensi, tiru, dan modifikasi.
Lightbox