SORU
26 AĞUSTOS 2010, PERŞEMBE


Ne's 'Ruby yolu' iki dizi aynı anda üzerinde yineleme

Bir sorun daha sözdizimi bir merakı daha çözmek için

Eşit uzunlukta iki dizi var, ve ikisini de aynı anda - örneğin, belirli bir dizin, hem kendi değerlerini çıkış için yinelemek istiyorum.

@budget = [ 100, 150, 25, 105 ]
@actual = [ 120, 100, 50, 100 ]

each_index kullanım gibi: diziler içine dizin biliyorum

@budget.each_index do |i|
  puts @budget[i]
  puts @actual[i]
end

Bir yokturRuby şekildebu daha iyi yapmak için? Bir şeygibibu?

# Obviously doesn't achieve what I want it to - but is there something like this?
[@budget, @actual].each do |budget, actual|
  puts budget
  puts actual
end

CEVAP
26 AĞUSTOS 2010, PERŞEMBE


>> @budget = [ 100, 150, 25, 105 ]
=> [100, 150, 25, 105]
>> @actual = [ 120, 100, 50, 100 ]
=> [120, 100, 50, 100]

>> @budget.zip @actual
=> [[100, 120], [150, 100], [25, 50], [105, 100]]

>> @budget.zip(@actual).each do |budget, actual|
?>   puts budget
>>   puts actual
>> end
100
120
150
100
25
50
105
100
=> [[100, 120], [150, 100], [25, 50], [105, 100]]

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dive In

    Dive In

    17 Temmuz 2013
  • Hey Nadine

    Hey Nadine

    24 Kasım 2006
  • spederson7

    spederson7

    17 Temmuz 2006