Java 使用scanner输入类处理可变数量的参数

Java 使用scanner输入类处理可变数量的参数,java,arrays,java.util.scanner,Java,Arrays,Java.util.scanner,在处理扫描仪输入时,我们可以使用变量。。带有sc.nextInt()的参数?? 例如..(以下代码) 输出为ArrayIndexOutOfBoundsException:1任何人都可以解释一下吗…您的数组大小为1,正在尝试访问第二个值,因此请使用下面的代码。我已从args[1]更改为args[0] ArrayIndexOutOfBoundsException当我们试图访问数组中不存在的索引值时,不仅对于整数数组,而且对于所有类型的数组,都会出现此异常 import java.util.S

在处理扫描仪输入时,我们可以使用变量。。带有sc.nextInt()的参数?? 例如..(以下代码)


输出为ArrayIndexOutOfBoundsException:1任何人都可以解释一下吗…

您的数组大小为1,正在尝试访问第二个值,因此请使用下面的代码。我已从
args[1]
更改为
args[0]

ArrayIndexOutOfBoundsException
当我们试图访问数组中不存在的索引值时,不仅对于整数数组,而且对于所有类型的数组,都会出现此异常

    import java.util.Scanner;
class Sample
{
public static void run(int... args){
    System.out.println(args[0]);
    }
public static void main(String args[])
{
    Scanner sc = new Scanner(System.in);
    System.out.println("please enter values: ");
    int values = sc.nextInt();
    run(values);
}

}

您的数组大小为1,正在尝试访问第二个值,因此请使用下面的代码。我已从
args[1]
更改为
args[0]

ArrayIndexOutOfBoundsException
当我们试图访问数组中不存在的索引值时,不仅对于整数数组,而且对于所有类型的数组,都会出现此异常

    import java.util.Scanner;
class Sample
{
public static void run(int... args){
    System.out.println(args[0]);
    }
public static void main(String args[])
{
    Scanner sc = new Scanner(System.in);
    System.out.println("please enter values: ");
    int values = sc.nextInt();
    run(values);
}

}

values
只是一个变量,所以
args
的长度是1,这意味着唯一有效的索引是0(数组是基于零的实体)

values
只是一个变量,所以
args
的长度是1,这意味着唯一有效的索引是0(数组是基于零的实体)

使用args[0]代替args[1]因为您的值存储在

上,所以使用args[0]而不是args[1],因为您的值存储在

上,所以传递一个整数,然后尝试访问数组的第二个元素。在Java中,数组索引从0开始。如果有帮助,您可以接受我的答案。好的,您传递一个整数,然后尝试访问数组的第二个元素。数组索引在Java中从0开始。如果有帮助,您可以接受我的答案。但是,如果我在运行时输入值数组,如1,2,3,4,则args[1]不起作用。您可以澄清一下吗?但是如果我在运行时输入值数组,如1,2,3,4,则args[1]不起作用。您可以澄清一下吗