Array #
Array dalam bahasa pemrograman Golang adalah struktur data yang digunakan untuk menyimpan sekumpulan elemen dengan tipe data yang sama. Array memiliki ukuran tetap yang ditentukan saat deklarasi dan tidak bisa diubah setelahnya. Berikut penjelasan tentang tipe array dan berbagai operasi yang dapat dilakukan pada array di Golang:
Deklarasi Array #
Array dapat dideklarasikan dengan menentukan ukuran dan tipe data elemen yang akan disimpan.
var arr [5]int // Array dengan 5 elemen tipe int
Inisialisasi Array #
Array dapat diinisialisasi dengan nilai-nilai default pada saat deklarasi.
var arr = [5]int{1, 2, 3, 4, 5} // Inisialisasi array dengan 5 elemen
Mengakses Elemen Array #
Elemen array diakses menggunakan indeks yang dimulai dari 0.
arr[0] = 10 // Mengubah nilai elemen pertama menjadi 10
fmt.Println(arr[0]) // Output: 10
Deklarasi Array tanpa Menyebutkan Ukuran #
Anda dapat mendeklarasikan array tanpa menentukan ukuran secara eksplisit.
arr := [...]int{1, 2, 3} // Ukuran array ditentukan oleh jumlah elemen yang diberikan
Iterasi melalui Array #
Anda dapat menggunakan loop for
untuk iterasi melalui elemen-elemen array.
for i := 0; i < len(arr); i++ {
fmt.Println(arr[i])
}
// Menggunakan range
for index, value := range arr {
fmt.Printf("Index: %d, Value: %d\n", index, value)
}
Operasi pada Array #
Menghitung Panjang Array #
Anda dapat menggunakan fungsi len
untuk mendapatkan panjang (jumlah elemen) array.
length := len(arr)
fmt.Println("Length of array:", length)
Menyalin Array #
Array dapat disalin ke array lain dengan tipe dan ukuran yang sama.
var copyArr [5]int
copy(copyArr[:], arr[:])
fmt.Println(copyArr)
Menggunakan Fungsi untuk Memodifikasi Array #
Anda dapat membuat fungsi yang menerima array sebagai argumen dan memodifikasinya.
func modifyArray(a [5]int) [5]int {
a[0] = 100
return a
}
func main() {
arr := [5]int{1, 2, 3, 4, 5}
newArr := modifyArray(arr)
fmt.Println(newArr) // Output: [100 2 3 4 5]
}
Array Multidimensi #
Golang mendukung array multidimensi (misalnya, array dua dimensi).
var matrix [3][3]int // Array dua dimensi 3x3
matrix = [3][3]int{
{1, 2, 3},
{4, 5, 6},
{7, 8, 9},
}
fmt.Println(matrix[0][0]) // Output: 1
Contoh Lengkap Penggunaan Array #
package main
import "fmt"
func main() {
// Deklarasi dan inisialisasi array
var arr = [5]int{1, 2, 3, 4, 5}
// Mengakses dan memodifikasi elemen array
arr[0] = 10
fmt.Println(arr[0]) // Output: 10
// Iterasi melalui array menggunakan loop for
for i := 0; i < len(arr); i++ {
fmt.Println(arr[i])
}
// Iterasi menggunakan range
for index, value := range arr {
fmt.Printf("Index: %d, Value: %d\n", index, value)
}
// Menghitung panjang array
length := len(arr)
fmt.Println("Length of array:", length) // Output: 5
// Menyalin array
var copyArr [5]int
copy(copyArr[:], arr[:])
fmt.Println(copyArr) // Output: [10 2 3 4 5]
// Array multidimensi
var matrix = [3][3]int{
{1, 2, 3},
{4, 5, 6},
{7, 8, 9},
}
fmt.Println(matrix[0][0]) // Output: 1
// Memodifikasi array dalam fungsi
newArr := modifyArray(arr)
fmt.Println(newArr) // Output: [100 2 3 4 5]
}
// Fungsi untuk memodifikasi array
func modifyArray(a [5]int) [5]int {
a[0] = 100
return a
}
Kesimpulan #
Dengan memahami dasar-dasar array dan berbagai operasi yang dapat dilakukan pada array di Golang, Anda dapat mengelola dan memanipulasi kumpulan data dengan cara yang efisien dan terstruktur.