#8: Konversi Tipe Data - Belajar Golang Dari Dasar

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

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
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