当我尝试对数组进行排序时,我在Java中收到错误消息,但我的大多数代码对我都有意义

时间:2016-01-24 11:51:36

标签: java

我收到此错误消息,

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 6
    at OrganizATION.main(OrganizATION.java:31)

我明白这与我的打印命令有关。这是我的代码。

import java.util.Arrays;
public class OrganizATION {
public static void main(String[] args) {
    // TODO Auto-generated method stub
    int[] aryNums;
    aryNums = new int[6];

    aryNums[0] = 8;
    aryNums[1] = 7;
    aryNums[2] = 89;
    aryNums[3] = 823;
    aryNums[4] = 45;
    aryNums[5] = 60;

    Arrays.sort(aryNums);;

    int i;

    for (i = 0; i < aryNums.length; i++);

    System.out.println("Number: " + aryNums[i]);

    }
}

2 个答案:

答案 0 :(得分:1)

for (i = 0; i < aryNums.length; i++); //<this semi-colon
System.out.println("Number: " + aryNums[i]);
  1. Arrays.sort(aryNums);; int i; for (i = 0; i < aryNums.length; i++); System.out.println("Number: " + aryNums[i]);
  2. 删除一个尾部分号。

    1. Arrays.sort(aryNums);;
    2. 另外,删除尾部半冒号。因为这个循环所做的就是&#34;&#34;,就是将for (i = 0; i < aryNums.length; i++);变量增加6次

      之后导致这一行
      i

      抛出System.out.println("Number: " + aryNums[i]); // aryNums[6] : invalid

答案 1 :(得分:0)

这一行有两个分号:

void test(char *tmp)
{
    test2(tmp);
    *tmp++ = '3';
    *tmp++ = '4';
    *tmp = 0;
}

此后如果

Arrays.sort(aryNums);;

额外的冒号或缺少的冒号会使您的代码无效。

删除它们,你会没事的。