Array¶
Array adalah sebuah metode dimana didalamnya terdapat beberapa string ataupun angka. Lalu apa si fungsinya si array ini?. Mari kita kupas tuntas, kenapa array itu penting
Kita ambil contoh aja seperti ini semisalnya kita ingin membuat banyak data tapi data itu hanya disimpan saja tidak ditampilkan atau hanya bisa diakses dengan cara mengambil data arraynya saja. Maka array adalah cara yang tepat. Contohnya kaya gini yaitu tentang nama nama buah
Jika kita lakukan seperti diatas tidak efisien apalagi kita hanya ingin apel
saja yang ingin kita tampilkan bukan mangga dan anggur
. Lalu bagaimana dengan struktur dari array ? Seperti inilah strukturnya.
${var[@]}
, nah mari simak dulu apa si fungsinya echo "${var[@]}" => Berarti mengambil isi data array secara keseluruhan
echo "${var[0]}" => Mengambil nilai data dari index 0
echo "${#var[@]}" => Menghitung panjang array
echo "${!var[@]}" => Berarti menampilkan setiap data itu dari index ke berapa
Nah mari kita coba membuat array dengan variabel buah
dan isi datanya itu apel, mangga, angur
Output | |
---|---|
Oke semisalnya kita ingin mengubah salah satu data dan memasukan data baru apakah bisa ? Sudah tentu bisa kita akan menggunakan var[index]="data_baru"
. Contohnya seperti ini
Output | |
---|---|
menambahkan data di index 3
dan line 3 mengubah index 0 menjadi pir
Lalu bagaimana ketika kita ingin menghapus data array ? Mudah sekali kita bisa menggunakan method unset
jadi yang kita lakukan itu unset var[index]
, contohnya
#!/bin/bash
buah=('apel' 'mangga' 'anggur')
buah[3]="semangka"
buah[0]="pir"
unset buah[1]
echo "Nama Buahnya adalah : ${buah[@]}"
echo "Nama Buah Index 0 : ${buah[0]}"
echo "Panjang Array : ${#buah[@]}"
echo "Index Setiap Buah : ${!buah[@]}"
# Output:
# Nama Buahnya adalah : pir anggur semangka
# Nama Buah Index 0 : pir
# Panjang Array : 3
# Index Setiap Buah : 0 2 3
Slice¶
Slice ialah metode dimana memotong array dari index berapapun. Maksudnya bagaimana? contohnya kita ingin data arra yang ditampilkan itu tidak dari awal namun dari data ke 5 sampai 7 semisalnya, nah metode yang kita gunakan itu bernama slice. Oke kita ambil contohnya seperti ini
arr=("apel" "mangga" "rambutan" "semangka" "melon")
echo "${arr[@]}"
# Ouput : apel mangga rambutan semangka melon
Symbol | Deskripsi |
---|---|
[@]:i | Mengambil data dari i awal sampai akhir |
[@]:i:x | Mengambil data awal i sampai data akhir yang ditentukan x |
[@]:-i | Mengambil data awal -i dari belakang |
[@]:-i:x | Mengambil data awal -i dari belakang sampai data akhir x |
Dari diatas semisalnya kita ingin mengambil data rambutan sampai dengan melon, bisa dilakukan dengan slice dengan cara seperti ini
Lalu bagaimana dengan kita yang ingin mengambil data array dari -i
, apakah itu sama? Berbeda dengan yang tadi data awal dihitung 0
, namun ketika kita mengambil dari belakang awalan berubah menjadi -1
jadi ketika kita mengambil data dari belakang , contohnya -3
maka hasilnya akan seperti ini
-3: -2
apakah bisa? Tidak bisa , jika dilakukan seperti itu akan terjadi error seperti ini Jadi ketika kita membuat slice index akhir tidak boleh kurang dari 0, nilainya harus angka positif Note: Uniknya untuk array kita bebas ingin menambahkan index ke berapa
Dibuat: September 23, 2022