2016-05-31 271 views
-3

我有一個數組:遍歷數組紅寶石

contacts = Array.new(arg1, arg2, arg3, arg4) 

我想創建一個循環,將採取陣列,並填寫現場與數組一樣:

while contacts.index[0] < contacts.index[3] 
    fill_in('field', with: contacts) 
    ... 
    contacts +=1 
end 

它告訴我我有錯誤的論點數

ArgumentError: wrong number of arguments (4 for 0..2) 

有什麼我失蹤了嗎?

+3

你費心尋找到的文檔['Array'(HTTP迭代://紅寶石文檔。組織/核心-2.3.1/Array.html)? – Stefan

+0

斯蒂芬,我做過了,但是這是一個簡單的例子,讓我有點困惑,否則我不會問這個問題 – Tom

回答

2

它不存在構造函數Array需要可變數量的參數。你可以這樣做

contacts = [arg1, arg2, arg3, arg4] 

然後,您可以用each方法

contacts.each do |contact| 
    puts contact 
end 
+1

謝謝,我可以看到我現在出了什麼問題。我會盡快接受答案 – Tom