Có một tay ngắn hoặc thực hành tốt nhất để gán thứ gì đó vào một hàm băm khi chúng không có trong ruby không? Ví dụ, vấn đề của tôi là tôi đang sử dụng một băm khác để xây dựng này và nếu một cái gì đó trong nó là nil, nó gán nil cho khóa đó, thay vì chỉ để nó một mình. Tôi hiểu lý do tại sao điều này xảy ra vì vậy giải pháp của tôi là:Không chỉ định giá trị nil cho hàm băm
hash1[:key] = hash2[:key] unless hash2[:key].nil?
Vì tôi không thể có giá trị trong trường hợp khóa thực sự trỏ đến không. (Tôi thà có một băm rỗng hơn một cái có {: key => nil}, điều đó không thể xảy ra)
Câu hỏi của tôi là có cách nào tốt hơn để làm điều này? Tôi không muốn làm một delete_if ở phần cuối của bài tập.
giải pháp của bạn có vẻ tốt đẹp đối với tôi. Nếu bạn đưa ra toàn bộ vòng lặp như một ví dụ, sẽ có một số cách tốt để làm cho nó thành một dòng, tôi chắc chắn. –