我有一個函數可以通過一個對象數組,並根據原始數組中的某些屬性創建一個新的對象數組。當我運行這段代碼我得到錯誤爲什麼這個局部變量被標記爲undefined? - 紅寶石
在「馬不停蹄」:未定義的局部變量或方法主要`sort_list」:對象(NameError)
我確定sort_list陣列之外初始化的循環,並且我試着用特定大小初始化它,但是我一直得到這個錯誤。我對Ruby很新,所以我做錯了什麼?
def nonstop(flight_list)
index = 0
sort_list[] = nil
flight_list.each do |curr|
if (curr.depapt == ARGV[2] && curr.arrapt == ARGV[3])
sort_list[index] = curr
index += 1
end
end
sort_list.sort! { |a,b| a.deptime <=> b.deptime}
sort_list.each do |curr|
puts "#{curr.flightnum}\t#{curr.deptime}\t#{curr.arrtime}"
end
if (sort_list.empty?)
puts "none"
end
end
你能告訴我們代碼,包括你說你在方法之外設置sort_list的位嗎?這可能不會做你認爲它的作用 – Gareth 2011-02-09 22:21:07
@Gareth當我讀到它時,他說'在循環之外'。 – 2011-02-09 22:22:50