Mengakses Elemen Hash
Termasuk bagian Dasar-Dasar dalam perjalanan Ruby di Coddy. Pelajaran 74 dari 88.
Sekarang kamu tahu cara membuat hash, kamu perlu mengambil nilai yang tersimpan di dalamnya. Berbeda dengan array yang menggunakan indeks numerik, hash menggunakan kunci untuk mengakses nilainya.
Letakkan key di dalam tanda kurung siku untuk mendapatkan nilai yang sesuai:
person = {"name" => "Alice", "age" => 25, "city" => "Paris"}
puts person["name"] # output: Alice
puts person["age"] # output: 25Kunci harus sama persis dengan yang kamu gunakan saat membuat hash. Jika kamu mencoba mengakses kunci yang tidak ada, Ruby mengembalikan nil:
person = {"name" => "Alice", "age" => 25}
puts person["country"] # output: (tidak ada, nil)Kamu juga bisa menggunakan method fetch, yang memungkinkanmu memberikan nilai default saat key tidak ditemukan:
person = {"name" => "Alice"}
puts person.fetch("name", "Unknown") # Output: Alice
puts person.fetch("country", "Unknown") # Output: UnknownIni berguna saat kamu ingin menangani kunci yang hilang dengan baik, alih-alih mendapatkan nil.
Tantangan
MudahBaca empat baris input:
- Nama produk (string)
- Harga (float)
- Jumlah stok (integer)
- Kunci yang akan dicari (string)
Buat hash bernama product dengan pasangan kunci-nilai berikut:
"name"dipasangkan dengan nama produk"price"dipasangkan dengan harga (sebagai float)"stock"dipasangkan dengan jumlah (sebagai integer)
Lalu, gunakan method fetch untuk mengambil nilai dari kunci yang diberikan pada input keempat. Jika kunci tersebut tidak ada, gunakan "<code>Not found" sebagai nilai default. Cetak hasilnya.
Misalnya, jika inputnya adalah Laptop, 999.99, 15, dan price, outputnya adalah:
999.99Jika inputnya adalah Keyboard, 49.99, 100, dan name, outputnya adalah:
KeyboardJika inputnya adalah Mouse, 29.99, 50, dan color, outputnya adalah:
Not foundJika inputnya adalah Monitor, 299.0, 8, dan stock, outputnya adalah:
8Coba sendiri
# Baca input
product_name = gets.chomp
price = gets.chomp.to_f
quantity = gets.chomp.to_i
key_to_lookup = gets.chomp
# TODO: Tulis kodemu di bawah ini
# Buat hash bernama 'product' dengan kunci "name", "price", dan "stock"
# Lalu gunakan method fetch untuk mengambil nilai dari key_to_lookup
# Gunakan teks persis dari instruksi sebagai nilai bawaan jika kuncinya tidak ada
# Tampilkan hasilnya sebagai output
puts resultPelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Ringkasan: Logika SederhanaOperator Logika Bagian 3Operator Logika Bagian 47Kalkulator Pembagian Tagihan
Pesan Selamat DatangMengambil input dari Pengguna10FizzBuzz dengan Variasi
Gambaran Umum PermainanMetode FizzBuzz2Variabel dan Tipe Data
Angka dan VariabelTipe Data stringTipe Data booleanTipe Data SymbolMemeriksa Tipe DataKonvensi PenamaanRangkuman: Membuat Variabel5Pengambilan Keputusan
Pernyataan IfIf - ElseRekap: Kalkulator SederhanaIf - Else BersarangPernyataan Unless8Perulangan
For Loop dengan RentangWhile LoopBreakNextRangkuman: FaktorialTimes LoopUntil LoopPerulangan BersarangRangkuman: Input Dinamis11array
Membuat arrayMengakses elemen arrayMengubah arrayMethod arrayRangkuman: array hasil perkalianRangkuman: array terbalikCara singkat menggunakan array14Hash
Membuat HashMengakses Elemen HashMengubah HashMethod pada HashRingkasan, Hash ProdukSymbol sebagai Kunci Hash3Operator Bagian 1
Operator AritmetikaOperator ModuloPintasan AritmetikaRingkasan: Matematika SederhanaOperator Perbandingan6Dasar Input dan Output
Output dengan putsOutput dengan print dan pOutput dengan VariabelInput dengan getsMethod chompKonversi TipeRangkuman: Kalkulator UsiaRangkuman: Benar atau Salah9method
Mendefinisikan methodParameter methodNilai KembalianRangkuman: Sigma methodRangkuman: Validation methodNilai Default Parameter12Melakukan Perulangan pada Koleksi
Iterator EachEach dengan IndeksMelakukan Perulangan pada StringMap dan CollectLatihan sendiri: Compiler Ruby online