-2

在甲骨文大学Java认证的视频中,导师刚刚说“args的大小是十个,所以我们最多只能发送十个元素”。有人听说过吗?

我刚试了一下,好像不太对。

package tests;

public class MainArgsSize {

    public static void main(String[] args) {
        for (String st : args) {
            System.out.println(st);
        }
    }
}
java tests.MainArgsSize 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
4

2 回答 2

2

从 Java 文档:

Java 应用程序可以从命令行接受任意数量的参数。

[资源]

但是,这些参数以数组的形式传递。从这里的链接:Java 数组有最大大小吗?,数组的大小被讨论为:

Integer.MAX_VALUE - 5

因此,这应该是极限。

编辑:感谢@MrLore,他在上面的评论中提供了以下讨论Unix机器限制的链接:

http://www.in-ulm.de/~mascheck/various/argmax/#results

于 2013-08-11T16:50:35.427 回答
0

我相当确定技术上的限制是 2147483647 或 Integer.MAX_VALUE。也许讲师指的是您的特定程序的业务规则?

于 2013-08-11T16:46:24.113 回答