Ruby `each_with_object` index

Ich würde das gerne machen a.each_with_object mit index, in einem besseren Weg, als dieses:

a = %w[a b c]
a.each.with_index.each_with_object({}) { |arr, hash|  
  v,i = arr
  puts "i is: #{i}, v is #{v}" 
}

i is: 0, v is a
i is: 1, v is b
i is: 2, v is c
=> {}

Gibt es eine Möglichkeit, dies zu tun, ohne v,i = arr ?

  • Was ist hash tun?
  • Warum nicht einfach each_with_object({}).with_index?!
  • Ja, das ist es, was ich verwenden, nun, ich weiß, ich kann die Gruppe Werte, die innerhalb zwischen || =)
  • Gut, @toro2. Leser sollten beachten Sie, dass hier die block-Variablen wäre |(e,h),i|, wo e ist das element des Arrays a, h ist das hash-Objekt erstellt und zurückgegeben wird, und i ist der index. map.with_index ist eine weitere gemeinsame Nutzung von with_index. Wenn Sie nicht tack with_index an das Ende der Enumerable-Methode können Sie Ihr vorausgehen mit each_with_index eher als each.with_index.
InformationsquelleAutor Abdo | 2014-02-12
Schreibe einen Kommentar