You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编程求助:实现动态接收整数输入的ArrayList存储与展示功能

实现动态接收整数的ArrayList程序

下面是用Java实现的完整代码,满足动态添加任意数量整数、输入后确认是否结束的需求:

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

public class IntegerArrayListInput {
    public static void main(String[] args) {
        ArrayList<Integer> numList = new ArrayList<>();
        Scanner scanner = new Scanner(System.in);

        while (true) {
            // 接收整数输入
            System.out.print("请输入一个整数:");
            try {
                int num = scanner.nextInt();
                numList.add(num);
            } catch (InputMismatchException e) {
                System.out.println("输入无效,请输入整数类型的数据!");
                scanner.next(); // 清除无效输入,避免死循环
                continue;
            }

            // 询问是否完成输入
            System.out.print("是否完成输入?输入Yes结束,其他内容继续:");
            scanner.nextLine(); // 读取换行符,避免读取到空字符串
            String choice = scanner.nextLine().trim();

            if (choice.equalsIgnoreCase("Yes")) {
                break;
            }
        }

        // 展示所有数据
        System.out.println("你输入的所有整数为:");
        for (int num : numList) {
            System.out.print(num + " ");
        }

        scanner.close();
    }
}

关键说明:

  • 动态扩容特性:ArrayList<Integer>无需预先指定大小,当元素数量超出当前容量时会自动完成扩容,完全支持任意数量的元素存储。
  • 输入异常防护:捕获InputMismatchException,避免用户输入非整数导致程序崩溃,同时清除无效输入保证循环正常执行。
  • 人性化结束判断:用equalsIgnoreCase("Yes")做判断,不管用户输入"yes"、"YES"还是"Yes"都能触发结束逻辑,提升操作容错性。
  • 循环逻辑设计:通过while(true)实现无限循环,直到用户输入指定内容才跳出循环,最后遍历输出所有存储的整数。

内容的提问来源于stack exchange,提问作者Jeevan Jitu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 06:33:18