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

  • AlaskanGrizzly

    AlaskanGrizz

    30 EKİM 2009
  • SelmerSaxMan

    SelmerSaxMan

    24 HAZİRAN 2006
  • sonia989

    sonia989

    26 EKİM 2006