我正在使用一种方法在某个位置的数组中插入一个整数,以便从最小到最大排序。我有一个循环来找出需要出去的价值:
int hold=0;
for (int j = 0; j < numElements; j++)
{
int temp = list[j];
if (temp <= value)
{
hold = j;
}
}
我正在使用:
System.arraycopy(list,hold, list, hold+1 ,numElements-hold);
list[hold] = value;
根据需要调低任何元素。然而,我有问题。我使用my方法添加到列表中的第一个整数没有正确排序,并且在排序后的最后一个元素之后结束。
前:
SortedIntList myList2 = new SortedIntList(10);
myList.add(100);
myList.add(50);
myList.add(200);
myList.add(25);
最后是一个数组[25,50,200,100]
为什么会发生这种情况?