我在 Java 中有一组对象,我试图将一个元素拉到顶部并将其余元素向下移动一个。
假设我有一个大小为 10 的数组,并且我正在尝试提取第五个元素。第五个元素进入位置 0
并且从 0 到 5 的所有元素将向下移动一位。
该算法不能正确移动元素:
Object temp = pool[position];
for (int i = 0; i < position; i++) {
array[i+1] = array[i];
}
array[0] = temp;
我该怎么做才正确?
原文由 darksky 发布,翻译遵循 CC BY-SA 4.0 许可协议
假设您的数组是 {10,20,30,40,50,60,70,80,90,100}
你的循环所做的是:
迭代 1: array[1] = array[0]; {10,10,30,40,50,60,70,80,90,100}
迭代 2: array[2] = array[1]; {10,10,10,40,50,60,70,80,90,100}
你应该做的是