kzen.dev
  • Pertanyaan
  • Tag
  • Pengguna
Notifikasi
Imbalan
Registrasi
Setelah Anda mendaftar, Anda akan diberitahu tentang balasan dan komentar untuk pertanyaan Anda.
Gabung
Jika Anda sudah memiliki akun, masuk untuk memeriksa pemberitahuan baru.
Akan ada hadiah untuk pertanyaan, jawaban, dan komentar tambahan.
Lebih
Sumber
Sunting
 Sayuj
Sayuj
Question

Ruby - mendapatkan nilai hash

Saya memiliki hash seperti

{:key1 => "value1", :key2 => "value2"}

Dan saya memiliki variabel k yang akan memiliki nilai sebagai 'key1' atau 'key2'.

Saya ingin mendapatkan nilai k ke dalam variabel v.

Apakah ada cara untuk mencapai hal ini tanpa menggunakan if atau case? Solusi satu baris lebih disukai. Mohon bantuannya.

28 2011-12-30T05:44:41+00:00 1
Pemrograman
ruby
hash
key-value
Solution / Answer
 Anurag
Anurag
30 Desember 2011 в 5:47
2011-12-30T05:47:03+00:00
Lebih
Sumber
Sunting
#15076244

Mengkonversi kunci dari string ke simbol, dan melakukan pencarian di hash.

hash = {:key1 => "value1", :key2 => "value2"}
k = 'key1'

hash[k.to_sym] # or iow, hash[:key1], which will return "value1"

Rails menggunakan kelas yang disebut HashWithIndifferentAccess yang terbukti sangat berguna dalam kasus seperti itu. Saya tahu bahwa Anda hanya menandai pertanyaan Anda dengan Ruby, tetapi Anda dapat mencuri implementasi kelas ini dari sumber Rails untuk menghindari konversi string ke simbol dan simbol ke string di seluruh basis kode Anda. Kelas ini membuat nilai dapat diakses dengan menggunakan simbol atau string sebagai kunci.

hash = HashWithIndifferentAccess.new({:key1 => "value1", :key2 => "value2"})
hash[:key1]  # "value1"
hash['key1'] # "value1"
 Anurag
Anurag
Jawaban edit 30 Desember 2011 в 5:54
72
0
Related communities 1
Ruby Indonesia
Ruby Indonesia
1 656 pengguna
Ruby adalah bahasa pemrograman dinamis berbasis skrip yang berorientasi objek. Tujuan dari ruby adalah menggabungkan kelebihan dari semua bahasa-bahasa pemrograman skrip yang ada di dunia.
Buka telegram
Tambahkan pertanyaan
Kategori
Semua
Teknologi
Budaya / Rekreasi
Kehidupan / Seni
Ilmu Pengetahuan
Profesional
Bisnis
Pengguna
Semua
Baru
Populer
1
Daniel Gogov
Terdaftar 2 hari yang lalu
2
工藤 芳則
Terdaftar 1 minggu yang lalu
3
Ирина Беляева
Terdaftar 1 minggu yang lalu
4
Darya Arsenyeva
Terdaftar 2 minggu yang lalu
5
anyta nuam-nuam (LapuSiK)
Terdaftar 2 minggu yang lalu
ID
JA
© kzen.dev 2023
Sumber
stackoverflow.com
di bawah lisensi cc by-sa 3.0 dengan atribusi