Oke jadi ini masalahnya, saya sudah lama mencari di Google untuk menemukan solusi untuk ini dan meskipun ada banyak di luar sana, mereka sepertinya tidak melakukan pekerjaan yang saya cari.
Pada dasarnya saya memiliki array yang terstruktur seperti ini
["item 1", "item 2", "item 3", "item 4"]
Saya ingin mengonversi ini menjadi Hash sehingga terlihat seperti ini
{ "item 1" => "item 2", "item 3" => "item 4" }
yaitu item yang ada di indeks 'genap' adalah kunci dan item pada indeks 'aneh' adalah nilainya.
Ada ide bagaimana melakukan ini dengan bersih? Saya kira metode brute force adalah dengan hanya menarik semua indeks genap ke dalam array yang terpisah dan kemudian loop di sekitarnya untuk menambahkan nilai-nilai.
*
disebut operator percikan . Dibutuhkan array dan mengonversinya menjadi daftar item literal. Jadi*[1,2,3,4]
=>1, 2, 3, 4
. Dalam contoh ini, hal di atas setara dengan melakukanHash["item 1", "item 2", "item 3", "item 4"]
. DanHash
memiliki[]
metode yang menerima daftar argumen (membuat bahkan indeks kunci dan nilai indeks ganjil), tetapiHash[]
tidak menerima array, jadi kami memercikkan array menggunakan*
.