创建可以输入数据的数组

时间:2015-03-10 05:46:42

标签: java arrays

我想创建一个可以输入数据的数组(最多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();

3 个答案:

答案 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++;
        }