class Lod
attr_accessor :lodnr
attr_accessor :lobnr
attr_accessor :stknr
def initialize(lodnr, lobnr, stknr)
@lodnr = lodnr
@lobnr = lobnr
@stknr = stknr.chomp
end
def to_s
"%8s, %5s, %3s" % [@lodnr, @lobnr, @stknr]
end
end
我有稱爲sold
數組,它包含這四個陣列:迭代多維數組?
[10000, 150, 5]
[500, 10, 1]
[8000, 171, 3]
[45, 92, 4]
的四個陣列是一類對象,從在.txt文件導入。
input = File.open("lodsedler.txt", "r")
input.each do |line|
l = line.split(',')
if l[0].to_i.between?(0, 99999) && l[1].to_i.between?(1, 180) && l[2].to_i.between?(1, 10)
sold << Lod.new(l[0], l[1], l[2])
else
next
end
end
我想每個陣列中計算所述第一值,尋找其被存儲在first
隨機選擇的數。
我得到的錯誤是總是這樣的事情,無論我嘗試:
Undefined method xxx for #Lod:0x0000000022e2d48> (NoMethodError)
的問題是,我似乎無法在所有的陣列存取權限的第一個值。
哪裏這個羅德班進入圖片?你的描述說這些是數組,而不是Lod對象。這些數字是否意味着是LOD物體還是什麼? – Chuck
對不起,是內部數組是從文本文件導入的Lod對象: input = File.open(「lodsedler.txt」,「r」) \t input.each do | line | (0,99999)&& l [1] .to_i. between?(1,180)&& l [2]之間的間隔爲0 [0]。 ] .to_i.between?(1,10) \t \t \t $出售<< Lod.new(L [0],L [1],L [2]) \t \t別的 \t \t \t下 \t \t結束 – Christian