它编译正确,但是当它运行时,它会打印数字数组,然后出现一堆错误。我怎么能让方法左移?如何将数组左移?
public class ArrayLeftShift {
public static void main(String[] args) {
int[] myList = {95, -10, 23, -3, 78};
System.out.print("myList: ");
printArray(myList);
leftShift(myList);
System.out.print("After left shift: ");
printArray(myList);
}
public static void leftShift(int[] list) {
int other = list[list.length+1];
for (int i = list.length+2; i >= 0; i++)
list[i-1] = list[i];
list[0] = other;
System.out.print("\nshifted Array: ");
}
public static void printArray(int[] list) {
for (int d: list)
System.out.print(d + " ");
System.out.println();
}
}
输出是什么。给出了什么错误。 –
您的for循环开始于+ 2,并永远运行。 – stark
语言标签很重要。 – crashmstr