a = [3, 4, 7, 8, 3]
b = [5, 3, 6, 8, 3]
Giả sử các mảng có cùng chiều dài, có cách nào để sử dụng each
hoặc một số cách thành ngữ khác để có được kết quả từ mỗi phần tử của cả hai mảng không? Không sử dụng bộ đếm?Có cách nào thành ngữ để hoạt động trên 2 mảng trong Ruby không?
Ví dụ, để có được những sản phẩm của mỗi yếu tố: [15, 12, 42, 64, 9]
(0..a.count - 1).each do |i|
là quá xấu xí ...
của Ruby 1.9.3
sắp viết nó. đó là cách tôi sẽ làm điều đó :) – Castilho
@Castilho: suy nghĩ đầu tiên của tôi là, chết tiệt ... Ruby phải có phương pháp 'zip' ở đâu đó. Tôi đến từ vùng đất của Python nên mất vài giây để tìm nó. –
Niềng răng thường được sử dụng với một lớp lót ('a.zip (b) .each {| i, j | c << i * j}') nhưng đó không chính xác là * chà đạp *. Và 'map' sẽ phù hợp hơn trong trường hợp cụ thể này:' c = a.zip (b) .map {...} ' –