【发布时间】:2015-03-09 15:29:35
【问题描述】:
我有这个程序,我从命令行运行,在这个方法之后冻结。这个方法有效,但最后它冻结了,我留下一个不断闪烁的光标。
def self.chooseteams(numberofteams)
i=1
while i<numberofteams
puts "choose a team"
team=gets.chomp
@@c<<team
i+=1
end
end
程序然后冻结并且无法调用下一个方法。它是为了执行它的功能,当满足条件时,传递到下一个方法。我的猜测是它陷入了无限循环,但是,我看不到!
def self.secondfixer(numberofteams)
until @@listofDrawnTeams.length==numberofteams do
firstPick = @@c.sample
@@listofDrawnTeams<<firstPick
@@listofDrawnTeams.uniq!
end
end
方法都在程序结束时调用
Genfix.gener(64)
Genfix.fixer(64)
Genfix.chooseteams(32)
Genfix.secondfixer(32)
Genfix.fixer(32)
【问题讨论】:
-
你的代码风格不好。请正确地做意图。
-
你有什么问题?
标签: ruby class loops methods gets