虽然有来自用户的输入

时间:2014-04-11 04:58:37

标签: java while-loop

我是java的新手。在我的程序中,我让用户输入要添加到数组列表的整数。我需要设置一个类似这样的while循环:

arrayList = new ArrayList<int>; 
int i = scanner.nextInt();
while(there is input from user)
{
    arrayList.add(i);
}

我希望用户输入5个值。我将什么作为while循环的条件语句。换句话说,如果有输入,我怎么说&#34;&#34;感谢

4 个答案:

答案 0 :(得分:3)

尝试一下

的内容
while(scanner.hasNextInt())
{
     arrayList.add(i);
}

答案 1 :(得分:1)

import java.util.Scanner;
import java.util.ArrayList;

public class A {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        ArrayList arrayList = new ArrayList<Integer>(); 
        int input;
        for (int i = 0; i < 5; i++)
        {
            input = scan.nextInt();
            arrayList.add(input);
        }
    }
}

答案 2 :(得分:0)

我尝试了下面的代码并测试了它的工作正常。如果你想要其他要求,请告诉我。

import java.io.*;
import java.util.ArrayList;
import java.util.Scanner;

public class test {
    public static void main(String args[]){
   Scanner scan = new Scanner(System.in);
   ArrayList<Integer> arr = new ArrayList<Integer>();
   System.out.print("enter 5 numbers");
   int counter=1;
  while(scan.hasNextInt()){
      int i=scan.nextInt();
      arr.add(i);
     counter++;
     if(counter==5){
         scan.close();
         break;
     }
    }


    }

}

答案 3 :(得分:0)

我相信,你目前接受的回答是非常致命的(它永远不会更新i)。你需要的是更像这样的东西 -

// arrayList = new ArrayList<int>; // And arrayList isn't a great name. But I have
                                   // no idea what they actually are. So  
                                   // just use a short name.  
List<Integer> al = new ArrayList<Inteeger>(); // <-- Use the interface type?
                                              // And, you have to use the wrapper type.
// int i = scanner.nextInt();
while (scanner.hasNextInt())
{
  al.add(scanner.nextInt()); // You don't need `i`.
}