我想创建一个可以输入数据的数组(最多10个数字 - 所以插槽: 0 1 2 3 4 5 6 7 8 9 ,每当用户输入单词“stop”时它会阻止用户输入更多数据。但是,如果使用了最大输入量(全部10个插槽),则程序会阻止用户输入更多数字。
我从这开始:
int[] array;
array = new int[10];
Scanner scan = new Scanner(System.in);
System.out.println("Input up to 10 numbers for the array: ");
我几乎陷入困境。任何帮助将不胜感激。
编辑: 这会有用吗?:
// while(!("stop".equals(scan)) || (array > 10)) {
// scan.nextInt();
答案 0 :(得分:2)
System.out.println("Input up to 10 numbers for the array: ");
for(int i=0;i<=9;i++){
String input = scan.nextLine();
if(input.equals("stop"))
break;
else
array[i]=Integer.valueOf(input);
}
答案 1 :(得分:0)
怎么样:
// Prints message
System.out.println("Input up to 10 numbers for the array: ");
int[] array = new int[10];
Scanner scan = new Scanner(System.in);
// Loops 10 times in total
for(int i = 0; i < 10; i++){
// Use scan.nextLine() to get input from the user
String input = scan.nextLine();
if(input.equals("stop")){
System.out.println("Input no longer taken. Array: /n" + array);
// Ends the loop
break;
}else{
// Prints the current iteration of the array
System.out.println((i+1)+": ");
array[i] = Integer.parseInt(input);
}
}
答案 2 :(得分:-2)
试试这个:
Scanner scan = new Scanner(System.in);
array = new int[10];
int i = 0;
while(i < 10) {
array[i] = scan.nextInt();
i++;
}