我有一种方法可以将数组中的所有项目向左移动一个位置。在我的后期条件下,我需要确保我的物品已经向左移动了一个。我已经将旧数组的第一个元素与新数组的最后一个元素进行了比较。我如何遍历从 2 到 count 的旧数组,从 1 到 count-1 循环遍历新数组并比较它们?这是我到目前为止的实现。
items_shifted:
old array.deep_twin[1] ~ array[array.count]
and
across 2 |..| (old array.deep_twin.count) as i_twin all
across 1 |..| (array.count-1) as i_orig all
i_twin.item ~ i_orig.item
end
end
end
我希望结果是正确的,但我得到了指向这个后置条件的合同违规。我已经通过在方法之前和之后打印出数组来手动测试该方法,我得到了预期的结果。