使用Scanner接受ArrayList会导致无限循环

时间:2018-02-19 02:18:12

标签: java arraylist

我正在构建一个程序,用Java为我的大学项目排序一系列整数。以下程序编译完美,但扫描仪继续运行而不会终止。我认为这是因为调用了s.next()方法,每次收到输入时都会将光标发送到下一行。我尝试键入EOF来关闭扫描仪,但它没有工作。请注意,由于我无法接受来自用户的输入

,因此未执行排序
    import java.util.Scanner;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.LinkedHashSet;
    import java.util.Collections;


    public class SortInt {
    static List<String> arraylist = new ArrayList<String>();
    public static void main (String[] args) {
    int i,n;

    Scanner s = new Scanner(System.in);

    System.out.println("How many elements do you want to sort?");
    n = s.nextInt();

    System.out.println("Enter an ArrayList to sort +n+ numbers");

    for(i=0; i<n; i++){

    while (s.hasNext()) {

        arraylist.add(s.next());
    }  
    }




 System.out.println("Before:");
    System.out.println("ArrayList contains: "+arraylist);

    }

    }

0 个答案:

没有答案