该程序应该只生产唯一的飞机,它重复元素数组。uniq方法无济于事。
class Airplane
attr_accessor :model
def initialize(model)
@model = model
end
end
models = [ "Boeing 777-300ER",
"Boeing 737-800",
"Airbus ?330-200",
"Airbus ?330-300",
"Airbus ?321",
"Airbus A320",
"Sukhoi SuperJet 100"]
planes = []
150.times do
model = models[rand(0..6)]
plane = Airplane.new(model)
planes << plane
Run Code Online (Sandbox Code Playgroud)
在这里尝试#飞机= planes.uniq没有帮助
break if models.length == planes.length
end
# result
planes.uniq.each do |plane| # <<<< uniq doesn't help
puts "Model: #{plane.model}"
end
Run Code Online (Sandbox Code Playgroud) ruby ×1