Java 越界错误,而不是自定义消息

Java 越界错误,而不是自定义消息,java,Java,当args.length==0时,我使用if语句为用户提供自定义错误消息。但是,当没有传递任何参数时,会出现一个越界错误,而不是打印自定义消息 String w1 = args[0]; int n1 = Integer.parseInt(args[1]); for(int x = 0; x < n1; x++) { System.out.println(w1); } String w2 = args[2]; int n2 = Integer.parseInt(args[3

args.length==0
时,我使用if语句为用户提供自定义错误消息。但是,当没有传递任何参数时,会出现一个越界错误,而不是打印自定义消息

String w1 = args[0];
int n1 = Integer.parseInt(args[1]);
  for(int x = 0; x < n1; x++) {
    System.out.println(w1);
  }

String w2 = args[2];
int n2 = Integer.parseInt(args[3]);
  for(int b = 0; b < n2; b++){
    System.out.println(w2);
  }

String w3 = args[4];
int n3 = Integer.parseInt(args[5]);
  for(int c = 0; c < n3; c++) {
    System.out.println(w3);
  }

  if(args.length == 0){
    System.out.println("Error: No user input.");
    return;
  }

  }
字符串w1=args[0];
int n1=整数.parseInt(args[1]);
对于(int x=0;x
显示代码后修订

我建议根据需要始终检查((args==null)| |(args.length==0))或((args!=null)&&&(args.length>0))

if((args==null)| |(args.length==0))
{
System.out.println(“错误:没有用户输入。”);
返回;
}
如果(args.length==1){
字符串w1=args[0];
int n1=整数.parseInt(args[1]);
对于(int x=0;x
您的代码:

if(args.length == 0){
    System.out.println("Error: No user input.");
    return;
}
应该在开头,因为当
args[]
中没有元素时,您可以这样访问它们:

String w1 = args[0];
int n1 = Integer.parseInt(args[1]);
  for(int x = 0; x < n1; x++) {
    System.out.println(w1);
}
字符串w1=args[0];
int n1=整数.parseInt(args[1]);
对于(int x=0;x

您将获得
ArrayIndexOutofBoundsSeption
。只需检查
args.length()==0
应该在开头

代码在哪里?尝试上载代码片段,但我没有足够的经验点年龄??不需要。请在此处粘贴代码。只需编辑您的问题并将代码包含在此处。请参阅添加了空签入,在未传递输入时收到了相同的错误现在我看到了您的代码,您正在检查空参数。很好,如果您给了我一个负数,请更改为正数。很乐意帮忙。下次在你的问题中给出你的来源。