我最近学习了如何将整数数组按升序排序。我正在尝试编写游戏,其中一部分涉及创建分层纹理渲染器;但是,当两个对象的级别完全相同(y 位置相同)时,其中一个对象会由于排序过程而消失。
为什么是这样?这是我的代码:
public void sort() {
int i = 0;
while (i < yposCount) {
order[i] = ypos[i];
i++;
}
Arrays.sort(order);
int j = 0;
while (j < yposCount) {
int k = 0;
while (k < yposCount) {
if (order[j] == ypos[k]) {
finalOrder[j] = k;
}
k++;
}
j++;
}
}