public static void main(String[] args) {
for(int i = 0; i < args.length; i++)
System.out.println("args[" + i + "] = " + args[i]);
int[] s = new int[args.length];
for(int k=0; k < args.length; k++) {
int j=0;
s[k] = Integer.parseInt(args[j],10);
j++;
System.out.println("s[" + k +"] = " + s[k]);
}
进行包装类之后,输出结果全为一,这是为什么
int j=0;//这个放外面
for(int k=0; k < args.length; k++) {
s[k] = Integer.parseInt(args[j],10);
j++;
System.out.println("s[" + k +"] = " + s[k]);
}
首先,因爲你輸出的代碼s[k] = Integer.parseInt(args[j],10);此處的j始終為0,所以總是输出的是第0个参数的值。
其次,可以格式化下代码,for循环中的语句不管有几行都放在{}中。j的初始化放在for循环外面,或者直接不需要j,因为k就是遍历arg的,直接用k就可以。
参考代码如下:
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
System.out.println("args[" + i + "] = " + args[i]);
}
int[] s = new int[args.length];
for (int k = 0; k < args.length; k++) {
s[k] = Integer.parseInt(args[k], 10);
System.out.println("s[" + k + "] = " + s[k]);
}
}
不知道,你写的想表达的什么意思,这个里面要找到args[i]里面的数是从哪里来的,你写了一堆遍历数组的代码,是不是大家都不会写,要你来教啊,