Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在对 Object van 中的数组进行迭代。我正在尝试将数组的元素弹出到另一个对象数组中。见下文。
@van.bikes.each { @garage<<( @van.removebike )} def removebike @bikes.pop end
当我这样做时,车库中的结果数组缺少元素和/或重复元素。
你也可以试试这个。。
@garage = [] @van.bikes.each{|bike| @garage << bike}
这样做的原因是,当 ruby 对数组进行迭代时,它会根据原始数组大小设置迭代次数。当您从该数组中弹出一个元素时,大小会发生变化,因此迭代无法正常工作。
你可以改用,
@van.bikes.count.times { @garage<<( @van.removebike )}