在Java中,输入数组通常是通过循环和输入流(如`Scanner`类)来完成的。如果你想要在输入数组时通过特定的字符(如空格或换行)来停止输入,你可以使用`Scanner`类的`hasNext()`方法来检查是否还有输入,或者使用`hasNextInt()`来检查是否还有整数输入。
下面是一个简单的例子,展示了如何使用`Scanner`来输入一个整数数组,并在输入结束后停止:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int[] numbers = new int;
int i = 0;
System.out.println("请输入10个整数:");
while (i < numbers.length) {
if (scanner.hasNextInt()) {
numbers[i] = scanner.nextInt();
i++;
} else {
scanner.next(); // 清除错误的输入
System.out.println("输入错误,请输入一个整数:");
}
}
System.out.println("输入的整数是:");
for (int number : numbers) {
System.out.print(number + " ");
}
scanner.close();
}
}
在这个例子中,程序会不断提示用户输入整数,直到用户输入非整数值(如字母或符号),此时`hasNextInt()`将返回`false`,循环将结束。注意,如果用户输入了空格或换行符,`hasNextInt()`也会返回`false`,因此程序会提示用户重新输入一个整数。
如果你想要用户可以通过空格来结束输入,你可以稍微修改上面的代码,使用`hasNext()`方法来检查是否还有输入,而不指定输入的类型:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int[] numbers = new int;
int i = 0;
System.out.println("请输入10个整数,用空格隔开:");
while (i < numbers.length && scanner.hasNext()) {
numbers[i] = scanner.nextInt();
i++;
if (scanner.hasNext()) {
scanner.next(); // 清除空格
}
}
System.out.println("输入的整数是:");
for (int number : numbers) {
System.out.print(number + " ");
}
scanner.close();
}
}
在这个修改后的例子中,程序会读取用户输入的整数,并在遇到空格时停止读取下一个整数,但会继续读取后续的输入,直到遇到非整数值。
请注意,这些代码示例适用于Java 8及更高版本。如果你使用的是更早的Java版本,可能需要使用不同的方法来检查输入类型。
希望这能帮助你理解如何在Java中输入数组并正确地停止输入