java - 选择将哪个输入存储到 ArrayList 的何处? (从扫描仪读取)

标签 java arraylist java.util.scanner

我正在尝试使用用户输入从扫描仪读取整数列表,并将所有输入存储到 ArrayList 中,除了用户输入的最后一个整数,我想将其存储在整数中,(整数键;)我该怎么做?

我尝试先将其放入 int[] 中,但我不知道用户将输入多少个整数。有没有一种方法可以直接将所有整数读入 ArrayList(不包括最后一个整数),这些整数将存储在 Integer 键中?

到目前为止我所拥有的:

private ArrayList<Integer> theList;
private Integer theKey;
public static void main(String args[])
{
    int[] integers = null;
    System.out.println("Enter a list of integers, the final being a key");
    Scanner scanner = new Scanner(System.in);
    int i = 0;
    try
    {
       while (scanner.hasNext())
       {
         integers[i] = scanner.nextInt();
         i++;
       }
    }
    catch (NullPointerException ex)
    {
    }
    for (int k = 0; i < integers.length; i++)
    {
        System.out.print(integers[k] + " ");
    }


}

最佳答案

您可以使用List<Integer> 。阅读全部int进入其中,然后(当不再有 int 时), remove 最后一个。比如,

System.out.println("Enter a list of integers, the final being a key");
Scanner scanner = new Scanner(System.in);
List<Integer> al = new ArrayList<>();
while (scanner.hasNextInt()) {
    al.add(scanner.nextInt());
}
int key = al.remove(al.size() - 1); // <-- the last one is removed, and returned.

关于java - 选择将哪个输入存储到 ArrayList 的何处? (从扫描仪读取),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34082181/

相关文章:

java - 实现 JavaFX 应用程序自动更新功能

java - android 如何在 onBackPressed() 时设置 viewpager 的特定项目位置?

java - 如何获取我在java中的onClick等方法中设置的值?

java - 我有买家数组,每个买家都有姓名和价格

Java删除或修改File中的一条记录

java - 自动标记如何在扫描仪中退出 hasNext

java - Java 中用于字符串相等的 println() 方法......以及它是如何工作的?

java - checkstyle 警告 "Declaring variables, return values or parameters of type ' ArrayList' is not allowed."是什么意思?

java - 使用 ArrayList 的 ArrayAdapter

java - JAVA 中的扫描仪输出乱码而不是希伯来语