Mengenal Variabel dan Constants pada pemrograman Golang
Variable
Berikut contoh implementasi dasar penggunaan variable pada program dibawah ini
1package main
2
3import "fmt"
4
5func main() {
6 var x string
7 x = "Hello World"
8 fmt.Println(x)
9}Hello World dengan menyimpan terlebih dahulu string ke dalam suatu variabel yaitu x dan selanjutnya mencetak variabel tersebut menggunakan fungsi fmt.Println().Jika kita mau menggabungkan variable string, kita bisa menggunakan operation + untuk menggabungkannya. Misalkan contoh program ada dibawah ini:
1package main
2
3import "fmt"
4
5func main() {
6 var x string
7 x = "first"
8 fmt.Println(x)
9 x = x + "second"
10 fmt.Println(x)
11}1$ go run main.go
2first
3first secondKita juga bisa menggunakan simbol persamaan yang berbeda ==. (Dua tanda sama dengan di sebelah satu sama lain) == adalah operator seperti + dan mengembalikan boolean. Sebagai contoh:
1package main
2
3import "fmt"
4
5func main() {
6 var x string = "hello"
7 var y string = "world"
8 fmt.Println(x == y)
9}false.
Sedangkan jika kita ganti variabel string y menjadi hello seperti ini1 ...
2 var y string = "world"
3 ...true.Didalam Go juga kita bisa membuat variabel dengan lebih singkat dan mudah sebagai contoh:
1 x := "Hello World": sebelum sama dengan = menandakan bahwa kita akan menyimpan isi ke dalam variabel x dan tipe dari variabel x pun akan disesuaikan oleh compiler yaitu berupa tipe string.Misalkan kita buat lagi variabel seperti dibawah ini
1 x := 5
2 fmt.Println(x)x ini berupa tipe integerBagaimana mendefinisikan suatu variabel
Memberi nama variabel dengan benar merupakan bagian penting dari pengembangan perangkat lunak. Nama harus dimulai dengan huruf dan dapat berisi huruf, angka, atau simbol _ (garis bawah). Kompilator Go tidak peduli apa yang Anda beri nama variabel sehingga nama tersebut dimaksudkan untuk keuntungan Anda (dan lainnya). Pilih nama yang secara jelas menggambarkan tujuan variabel. Misalkan kita memiliki yang berikut:
1 x := "Kitty"
2 fmt.Println("Nama kucing saya adalah ", x)x bukanlah nama yang sangat baik untuk sebuah variabel. Nama yang lebih baik adalah:1 name := "Kitty"
2 fmt.Println("Nama kucing saya adalah ", name)1 catName := "Kitty"
2 fmt.Println("Nama kucing peliharaanku adalah ", catName)Scope
Kembali lagi ke program misalkan kita mendefinisikan variabel seperti dibawah ini
1package main
2
3import "fmt"
4
5func main() {
6 var x string
7 x = "Hello World"
8 fmt.Println(x)
9}1package main
2
3import "fmt"
4
5var x string = "Hello World"
6
7func main() {
8 fmt.Println(x)
9} 1package main
2
3import "fmt"
4
5var x string = "Hello World"
6
7func main() {
8 fmt.Println(x)
9}
10
11func f(){
12 fmt.Print(x)
13}f() akan mengakses variabel x ini jika fungsi tersebut dipanggil. Lalu kita coba lihat program ini seperti ini: 1package main
2
3import "fmt"
4
5
6func main() {
7 var x string = "Hello World"
8 fmt.Println(x)
9}
10
11func f(){
12 fmt.Print(x)
13}1 .\main.go:11: undefined: xKompiler memberi tahu bahwa variabel x di dalam fungsi f() tidak ada. Itu hanya ada di dalam fungsi utama. Rentang tempat di mana diizinkan untuk menggunakan x disebut ruang lingkup variabel.
Pada dasarnya, variabel ada di dalam kurung kurawal terdekat {} (blok) termasuk kurung kurawal bersarang (blok), tetapi tidak di luarnya. Lingkup dapat sedikit membingungkan pada awalnya; seperti yang kita lihat lebih banyak contoh Go, itu akan menjadi lebih jelas.
Constants
Go juga memiliki dukungan untuk konstanta. Konstanta pada dasarnya adalah variabel yang nilainya tidak dapat diubah nanti. Mereka dibuat dengan cara yang sama seperti membuat variabel tetapi alih-alih menggunakan kata kunci var, kami menggunakan kata kunci const.
1package main
2
3import "fmt"
4
5func main() {
6 const x string = "Hello World"
7 fmt.Println(x)
8}1 const x string = "Hello World"
2 x = "Some other string"1.\main.go:7: cannot assign to xPenggunaan constant hanya digunakan untuk variable yang tidak akan di write setiap kali. Misalnya Pi dalam matematika ini bisa dijadikan tipenya sebagai constant.
Multiple Definition
Go juga bisa mempermudah penginisialisasian variabel dengan cara multiple definition seperti contoh dibawah ini.
1var (
2 a = 5
3 b = 10
4 c = 15
5)var dan const.Program untuk membaca variable
Berikut ini contoh menginput variabel dengan scan program
1package main
2
3import "fmt"
4
5func main() {
6 fmt.Print("Enter a number: ")
7 var input float64
8 fmt.Scanf("%f", &input)
9 output := input * 2
10 fmt.Println(output)
11}maka output:
1Enter a number: 4
28