我对如何使用args.length感到困惑,我在这里编写了一些代码:
public static void main(String[] args) {
int [] a = new int[args.length];
for(int i = 0;i<args.length;i++) {
System.out.print(a[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
无论我在命令行参数中放置什么值,打印输出都是0,我想我可能把args.length与args [0]混淆了,有人可以解释一下吗?谢谢.
Mar*_*oun 20
int默认情况下,数组初始化为零(所有成员都为零),请参见4.12.5.变量的初始值:
每个类变量,实例变量或数组组件在创建时都使用默认值进行初始化...
对于int类型,默认值为零.
你正在打印数组的值,因此你得到了0.
你试过这个吗?
for (int i = 0; i < args.length; i++) {
System.out.print(args[i]);
}
Run Code Online (Sandbox Code Playgroud)
args包含传递给程序的命令行参数.args.length是参数的长度.例如,如果您运行:
java myJavaProgram first second
Run Code Online (Sandbox Code Playgroud)
args.length将是2,它将包含["first", "second"].
并且数组args的长度自动设置为2(参数个数),因此无需设置args的长度.