如果我想从屏幕输入n个正数数然后存入arraylist中怎么做?

解决方案 »

  1.   

    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.Scanner;public class Csdn 
    {
    public static void main(String[] args) 
    {
    System.out.println("input : ");
    Scanner sc = new Scanner(System.in);
    String s = sc.nextLine();
    String[] ss = s.split(" ");

    ArrayList al = new ArrayList();
    for(int i = 0;i<ss.length;i++)
    {
    al.add(Integer.valueOf(ss[i]));
    }
    //输出arrayList中的数据,测试是否存入正确
    for(int j=0;j<al.size();j++)
    {
    System.out.print(al.get(j)+" ");
    }
    }
    }应该还有更好的方法。期待中...
      

  2.   

    大概可以这样:import java.util.*;public class GetInt {
    public static void main(String[] args) {
    ArrayList<Integer> list = new ArrayList<Integer>();
    Scanner sc = new Scanner(System.in);
    String s = sc.nextLine();
    while(s != null && !("".equals(s))) {
       list.add(Integer.parseInt(s));
       s = sc.nextLine();
    }
    for(Integer i : list) {
    System.out.println(i);
    }
    }
    }
      

  3.   


    Scanner sc=new Scanner();
    List list=new ArrayList();
    while(true){
        try{
           int num=Integer.parseInt(sc.next());
           list.add(num);
        }catch(NumberFormatException){
           System.out.println("请输入整数")
        }
    }
      

  4.   

    import javax.swing.JOptionPane;
    public class test{
    private int[] arraylist;
    public static void main(String [] args){
    test te=new test();
    te.capture(3);

    }
    public void capture(int n){
    arraylist=new int[n];
    for (int i=0;i<n;i++){
    int num=i+1;
    String temp=JOptionPane.showInputDialog(null,"输入第"+num+"个数");
    arraylist[i]=Integer.parseInt(temp);
    }
    for (int i=0;i<n;i++)
    System.out.println("第"+i+"个数为"+ arraylist[i]);

    }
    }