如何修复数组索引超出范围的异常

时间:2015-12-17 05:54:51

标签: java

嗨我在过去几天学习java只有当我尝试执行一个简单的程序时,我在运行时遇到了一个ArrayIndexoutofbounds异常请帮我解决这个异常

这是我的代码

  class Armstrong 
    {
      public static void main(String args[])
       {
         if (args.length!=0) {
            System.out.println("value is required");
            System.exit(0);
           }
         int num = Integer.parseInt(args[0]);
         int n = num;
         int check =0, remainder;
         while(num>0)
          {
            remainder = num%10;
            check = check+(int)Math.pow(remainder,3);
            num = num/10;
          }
         if (check==n)
           System.out.println(n+ "isa armstrong number");
         else 
           System.out.println(n + "is not a armstrong number");
         }
       }

2 个答案:

答案 0 :(得分:5)

如果您想要一个值,那么if (args.length!=0) {应为

if (args.length==0) {

因为您在条件为true时终止。

答案 1 :(得分:0)

更改条件
 if (args.length!=0) 

 if (args.length<=0) 

如果args没有任何值,则抛出此错误。