Konversi Tipe Data
Di dalam bahasa pemrograman Go, kita dapat mengubah (konversi) suatu tipe data ke tipe data lainnya. Contohnya kita ingin merubah tipe data int64
menjadi int32
, atau sebaliknya.
Untuk melakukan konversi tipe data, kita tinggal memanggil fungsi dengan nama tipe data target konversi dan memasukkan nilai yang dikonversi sebagai argument. Perhatikan contoh potongan kode berikut:
var age1 int64 = 21
// konversi ke integer 32
var age2 int32 = int32(age1)
Pada potongan kode di atas kita merubah tipe data int64
menjadi int32
. Namun kamu perlu hati-hati ya. Perubahan tipe data juga berarti merubah ukuran yang bisa ditampung. Kamu tentu tidak bisa merubah tipe data untuk nilai 10000 menjadi int8
karena int8
hanya dapat menampung nilai maksimal 127, jika kamu memaksakannya maka akan terjadi integer overflow.
Dalam pemrograman komputer, integer overflow terjadi ketika operasi aritmatika mencoba membuat nilai numerik yang berada di luar rentang yang dapat direpresentasikan dengan sejumlah digit tertentu – baik lebih tinggi dari nilai maksimum atau lebih rendah dari nilai minimum yang dapat diwakili.
Wikipedia
Contoh Kode Konversi Tipe Data
package main
import "fmt"
func main(){
var age1 int64 = 21
// konversi ke integer 32
var age2 int32 = int32(age1)
fmt.Println(age1)
fmt.Println(age2)
}
output:
21
21
Selain tipe data number, kita juga bisa mengkonversi tipe data byte menjadi string agar kita mendapatkan karakternya. Sebagai contoh di pembahasan sebelumnya kita pernah mengambil karakter dari string yang kemudian mengembalikan byte dari karakter yang kita ambil. Untuk mendapatkan karakter aslinya, kita perlu melakukan konversi. Perhatikan contoh berikut:
package main
import "fmt"
func main(){
var name string = "Ruang Developer"
var charR byte = name[0]
var charRString string = string(charR)
fmt.Println(name)
fmt.Println(charR)
fmt.Println(charRString)
}
output:
Ruang Developer
82
R