【问题标题】:Run Java program on Windows Command Line 1000 times在 Windows 命令行上运行 Java 程序 1000 次
【发布时间】:2015-02-23 01:41:05
【问题描述】:

所以我有一个 java 程序...它需要两个参数,我需要运行它 1000 次。第一个参数没有改变,但第二个参数需要从 1 到 1000。我该怎么做?我已经尝试了很长时间了:(

提前致谢。

【问题讨论】:

  • 阅读the tutorial
  • 为什么需要这样做?启动 JVM 1000 次将比用 Java 编写一个从 1 到 1000 的循环要花费更长的时间。
  • 为什么不能使用for 循环?为什么每次输入略有不同,需要重新执行程序 1000 次?
  • 我应该用不同的缓冲区大小绘制程序运行所需的时间。

标签: java windows loops cmd javac


【解决方案1】:

修改程序以采用三个参数而不是两个。然后使用第二个和第三个参数形成一个循环。

原来你的程序可能是这样的:

public static void main(String[] args) {
    String arg1 = args[0];
    String arg2 = args[1];

    //process using arg1 and arg2
}

将其更改为以下内容:

public static void main(String[] args) {
    String arg1 = args[0];
    String arg2 = args[1];
    String arg3 = args[2];

    int loopstart = Integer.parseInt(arg2);
    int loopend = Integer.parseInt(arg3);

    for (int i = loopstart; i <= loopend; i++) {
        //process using arg1 and i <-- take note
    }
}

注意:从批处理文件中的循环重复调用程序比在程序本身中实际使用循环要慢得多,而且不太理想。

【讨论】:

  • 我以为可以直接在命令行上完成,但我会这样做......太简单了哈哈。谢谢。
【解决方案2】:

您可以在 .bat 文件中编写一个循环并从中调用 java 程序。比如:

for /l %x in (1, 1, 1000) do (
 echo %x
 // call java using %x for the value of the current iteration
)

调用java:How to run java application by .bat file

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-14
    • 1970-01-01
    • 1970-01-01
    • 2015-03-24
    • 2010-10-25
    相关资源
    最近更新 更多