title: how to read integers and store them in an array in java
body: <p>Sorry if this is an obvious problem.</p>
  
  <p>I'm trying to read integers from users and store them in an array.</p>
  
  <p>The thing is that I want to use arraylist, because the size of the input is not for sure</p>
  
  <p>If I know the size then I know a way to do that, which is</p>
  
  <pre><code>class Test1 
  {
      public static void main(String[] args) 
      {
          Scanner reader = new Scanner(System.in);
          System.out.println("Please input your numbers");
  
          int num;       // integer will be stored in this variable
  
          ArrayList&lt;Integer&gt; List = new ArrayList&lt;Integer&gt;();
  
          // for example if I know the size of the input is 5, 
          // then I read one single number and put it into the arraylist.
          for (int i = 0; i &lt;= 4; i++) 
          {
              num = reader.nextInt();
              List.add(num);
          }
          System.out.println(List);
      }
  }
  </code></pre>
  
  <p>How to do this if I don't know the size?
  Except for reading one number in each loop, is there any better way to do that?
  Can I use BufferedReader instead of Scanner?</p>
  
  <p>Thanks a lot for any help!</p>