Ilmu Coding Ilmucoding.com - Merupakan situs yang membantu Anda belajar coding lebih mudah, nyaman, interaktif dan profesional. Belajar sekarang di ilmu coding. GRATIS

Belajar Golang #7 – Memahami Tipe Data

4 min read

Tipe Data Golang

Episode Belajar Golang ke 7 ini akan membahas lebih jauh tentang tipe data Golang. Anda akan belajar tentang int, string, boolean dan tipe data lainnya.

Buat Anda yang ingin memahami macam-macam tipe data di Golang, Anda berada pada artikel yang tepat.

Namun sebelum Anda melanjutkan membaca pembahasan tipe data di golang, sebaiknya baca juga artikel lainnya, seperti:

Baca: Memahami Variabel di Golang

Jika sudah, yuk kita mulai.

Siapkan segelas kopi dan cemilannya.

Let’s go!

Apa itu Tipe Data?

Tipe data adalah jenis-jenis sifat / karakter dari suatu data. Setiap data dapat ditentukan tipenya agar setiap nilai yang terkandung di dalamnya ikut ditentukan.

Menurut pandangan ilmu komputer dan pemrograman, tipe data merupakan klasifikasi data yang mengenalkan kompilator atau penerjemah bagaimana programmer bermaksud untuk menggunakan data.

Sebagian besar bahasa pemrograman mendukung berbagai macam data, sebagai contoh, bilangan riil, integer atau Boolean, termasuk Golang.

Tujuan dari penggunaan tipe data agar setiap variabel hanya bisa diisi sesuai dengan tipe datanya.

Misalnya suatu variabel memiliki tipe data integer, maka variabel tersebut hanya bisa diisi dengan nilai bilangan positif saja. Berlaku sama untuk semua jenis tipe data.

Tipe data biasanya dideklarasikan di awal sebelum nama variabelnya.

Contoh:

tipe_data nama_variabel = value

Jenis-jenis Tipe Data di Golang

Setiap bahasa pemrograman setidaknya minimal mendukung 3 tipe data.

Golang mengenal beberapa jenis tipe data, diantaranya adalah tipe data numerik (desimal & non-desimal), string, dan boolean.

Pada part sebelumnya secara tak sadar Anda sudah mengaplikasikan beberapa tipe data, seperti string dan tipe int, namun belum mengetahui dengan jelas rinciannya.

Nah, Pada part ini akan dijelaskan beberapa macam tipe data standar yang disediakan oleh Golang beserta cara penggunaannya.

1# Tipe Data Numeric

Tipe data ini biasa disebut dengan tipe data numerin non-desimal atau non floating point. Golang memiliki 2 jenis pada bagian ini, yaitu uint dan int.

Tipe data uint digunakan untuk menangani bilangan positif, sedangkan tipe data int digunakan untuk menangani bilangan bulat baik negative atau positif.

Kedua jenis tipe data di atas kemudian dijabarkan lagi secara mendetail berdasarkan cakupan dan besarnya nilai.

Perhatikan table di bawah ini:

Tipe Data Cakupan Nilai
uint8 0 – 255
uint16 0 – 65535
uint32 0 – 4294967295
uint64 0 – 18446744073709551615
uint Sama dengan uint34 dan uint64
byte Sama dengan uint8
int8 -128 – 127
init16 -32768 – 32767
int32 -2147483648 – 2147483647
int64 -9223372036854775808 – 9223372036854775807
int Sama dengan int 32 dan 64
rune Sama dengan int32

Dengan adanya table di atas akan memudahkan Anda untuk memilah dan memilih tipe apa yang paling cocok.

Sebab sangat dianjurkan untuk menggunakan tipe yang tepat agar tidak tidak terjadi penumpukan memori yang berlebihan.

Contoh:

Silahkan buat file baru bernama part_7_tipe_data_numeric.go di dalam folder belajar_golang (lihat part ke 4,5 dan 6 sebelumnya jika Anda belum mengetahui tentang folder ini).

Kemudian ketik kode di bawah ini pada file tersebut:

package main

import "fmt"

func main() {
	var angkaPositif uint8 = 58
	var angkaNegatif = -1243423644
	fmt.Printf("Bilangan positif: %d\n", angkaPositif)
	fmt.Printf("Bilangan negatif: %d\n", angkaNegatif)
}

Penjelasan:

Variabel angkaPositifbertipe uint8 dengan nilai awal 58. Sedangkan variabel angkaNegatif dideklarasikan dengan nilai awal -1243423644 .

Compiler secara cerdas akan menentukan tipe data variabel tersebut sebagai int32 (karena angka tersebut masuk ke cakupan tipe data int32 ).

Template %d pada fmt.Printf() digunakan untuk memformat data numerik non-desimal.

Output Program:

Silahkan lihat demo program melalui link di bawah ini:

2# Tipe Data Numeric Desimal

Golang memiliki 2 jenis pada tipe data numerik desimal, yaitu float32 dan float64.

Perbedaan kedua tipe data tersebut berada di lebar cakupan nilai desimal yang bisa ditampung oleh masing-masing variabel.

Contoh:

Silahkan buat file baru bernama part_7_tipe_data_desimal.go kemudian ketik kode berikut:

package main

import "fmt"

func main() {
	var angkaDesimal = 7.5
	fmt.Printf("Bilangan desimal: %f\n", angkaDesimal)
	fmt.Printf("Bilangan desimal: %.3f\n", angkaDesimal)
}

Penjelasan:

Pada baris ke 6, variabel angkaDesimal akan memiliki tipe data float32, karena nilainya berada di cakupan tipe data tersebut.

Baris ke 7 terdapat template %f yang digunakan untuk memformat data numeric desimal menjadi string.

Digit desimal yang akan dihasilkan adalah 6 digit. Pada contoh di atas, hasil format variabel decimalNumber adalah 7.500000 .

Jumlah digit yang muncul bisa dikontrol menggunakan %.nf , tinggal ganti n dengan angka yang diinginkan.

Contoh:

%.3f maka akan menghasilkan 3 digit desimal, %.10f maka akan menghasilkan 10 digit desimal.

Output Program:

Untuk demo program bisa Anda lihat melalui link di bawah ini:

3# Tipe Data Boolean

Golang memiliki 2 tipe data bool, yaitu true dan false .

Tipe data ini biasa dimanfaatkan dalam seleksi kondisi dan perulangan.

Contoh:

Silahkan buat file baru bernama part_7_tipe_data_boolean.go, kemudian ketik kode di bawah ini:

package main

import "fmt"

func main() {
	var exist bool = true
	fmt.Printf("Exist? %t \n", exist)
}

Simpan.

Jalankan dengan command berikut ini:

go run part_7_tipe_data_boolean.go

Gunakan %t untuk memformat data bool menggunakan fungsi fmt.Printf() .

4# Tipe Data String

Hampir semua bahasa pemrograman menerapkan ciri yang sama pada tipe data string, yaitu quote, petik satu ( ‘ ) atau petik dua ( “ ).

Contoh:

Silahkan buat file baru bernama part_7_tipe_data_string1.go, kemudian ketik kode di bawah ini:

package main

import "fmt"

func main() {
	var say string = "Selamat datang di Ilmu Coding"
	fmt.Printf("Pesan: %s \n", say)
}

Simpan.

Jalankan dengan command berikut ini:

go run part_7_tipe_data_string1.go

Selain menggunakan tanda quote, deklarasi string juga bisa dengan tanda grave accent/backticks ( ` ), tanda ini terletak di sebelah kiri tombol 1.

Keistimewaan string yang dideklarasikan menggunakan backtics adalah membuat semua karakter didalamnya tidak di escape, termasuk \n , tanda petik dua dan tanda petik satu, baris baru, dan lainnya.

Semua akan terdeteksi sebagai string.

Contoh:

Silahkan buat file baru bernama part_7_tipe_data_string2.go, kemudian ketik kode di bawah ini:

package main

import "fmt"

func main() {
	var pesan = `Selamat datang di Ilmu Coding.
	Silahkan belajar tutorial Go.
	di situs ini. Gratis.`
	fmt.Println(pesan)
}

Simpan.

Jalankan dengan command berikut ini:

Go run part_7_tipe_data_string2.go

Ketika dijalankan, output akan muncul sama persisi sesuai nilai variabel pesan di atas. Tanda petik dua akan muncul, baris baru juga muncul, sama persis.

5# Tipe Data Nil & Zero Value

Bahasa pemrograman lain akrab dengan istilah null, sedangkan go menggunakan istilah nil.

nil bukan merupakan tipe data, melainkan sebuah nilai.

Variabel yang isi nilainya nil berarti memiliki nilai kosong, mirip dengan null.

Semua tipe data yang sudah dibahas di atas memiliki zero value (nilai default tipe data). Artinya meskipun variabel dideklarasikan dengan tanpa nilai awal, tetap akan ada nilai default-nya.

  • Zero value dari string adalah “” (string kosong).
  • Zero value dari bool adalah false .
  • Zero value dari tipe numerik non-desimal adalah 0 .
  • Zero value dari tipe numerik desimal adalah 0.0 .
  • Zero value berbeda dengan nil . Nil adalah nilai kosong, benar-benar kosong.

nil tidak bisa digunakan pada tipe data yang sudah dibahas di atas. Ada beberapa tipe data yang bisa di-set nilainya dengan nil , diantaranya:

  • pointer
  • tipe data fungsi
  • slice
  • map
  • channel
  • interface kosong atau interface{}

Nantinya kita akan sering bertemu dengan nil setelah masuk pada pembahasan part tersebut.

Apa Selanjutnya?

Alhamdulillah pembahasan tipe data di Golang sudah cukup dari kata selesai.

… sebab masih banyak pembahasan basic yang perlu kita pelajari lagi, yaitu:

  • Operator
  • Konstanta
  • Conditional
  • Perulangan
  • Dan masih banyak lagi …

Selamat belajar…

Sumber:

Dasar Pemrograman Golang – Noval Agung (dengan sedikit modifikasi)

Ilmu Coding Ilmucoding.com - Merupakan situs yang membantu Anda belajar coding lebih mudah, nyaman, interaktif dan profesional. Belajar sekarang di ilmu coding. GRATIS

Leave a Reply

Your email address will not be published. Required fields are marked *

Jika terbantu dengan artikel ini, silahkan share, beri komentar dan "klik" 1 kali pada iklan ya.