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

Java实现:如何让程序接收命令行空格分隔的整数列表输入

把插入排序程序改成接收命令行输入的方法(Mac + Eclipse)

别担心,完全没接触过命令行也没关系,我一步步给你讲清楚怎么改程序,还有怎么在Eclipse里用命令行参数运行~

第一步:修改Java驱动类代码

原来的驱动类里硬编码了数组,现在我们要改成从main方法的String[] args参数里获取输入——这个args就是命令行里输入的空格分隔的内容,每个元素对应一个输入的字符串。

下面是修改后的完整示例代码(假设你的插入排序方法已经写好了,叫insertionSort):

public class InsertionSortDriver {
    // 你的插入排序方法,保留原来的逻辑就行
    public static void insertionSort(int[] arr) {
        int n = arr.length;
        for (int i = 1; i < n; ++i) {
            int key = arr[i];
            int j = i - 1;

            while (j >= 0 && arr[j] > key) {
                arr[j + 1] = arr[j];
                j = j - 1;
            }
            arr[j + 1] = key;
        }
    }

    // 打印数组的辅助方法
    public static void printArray(int[] arr) {
        int n = arr.length;
        for (int i = 0; i < n; ++i) {
            System.out.print(arr[i] + " ");
        }
        System.out.println();
    }

    public static void main(String[] args) {
        // 先判断有没有输入参数
        if (args.length == 0) {
            System.out.println("请输入空格分隔的整数列表作为命令行参数!");
            return;
        }

        // 把命令行的字符串参数转成int数组
        int[] arr = new int[args.length];
        try {
            for (int i = 0; i < args.length; i++) {
                arr[i] = Integer.parseInt(args[i]);
            }
        } catch (NumberFormatException e) {
            System.out.println("输入无效!请确保所有参数都是整数。");
            return;
        }

        // 执行排序并输出结果
        System.out.println("排序前的数组:");
        printArray(arr);

        insertionSort(arr);

        System.out.println("排序后的数组:");
        printArray(arr);
    }
}

第二步:在Eclipse里运行带命令行参数的程序

因为你平时用Eclipse,直接在这里设置参数就行,不用打开终端:

  • 右键你的驱动类(比如上面的InsertionSortDriver),选择 Run As > Run Configurations...
  • 在弹出的窗口里,切换到 Arguments 标签页
  • 在 Program arguments 输入框里,输入空格分隔的整数,比如 99 37 17 5 12 33
  • 点击右下角的 Run 按钮,就能看到控制台输出排序前后的结果啦!

额外:如果想在Mac终端(命令行)运行

要是之后你想试试纯命令行操作,也很简单:

  1. 打开Mac的「终端」应用(在Launchpad的「其他」文件夹里)
  2. 用cd命令切换到你的Java文件所在的文件夹,比如cd /Users/你的用户名/eclipse-workspace/你的项目名/src
  3. 编译代码:javac InsertionSortDriver.java(如果插入排序是单独的类,也要一起编译,比如javac InsertionSort.java InsertionSortDriver.java)
  4. 运行程序:java InsertionSortDriver 99 37 17 5 12 33,回车就能看到结果啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:19:20