【发布时间】:2017-02-24 17:06:26
【问题描述】:
我主要想知道的是:
在public static void val(int[] x) 行中(int[] x) 做什么?
另外:为什么我问的时候会得到最终的累加值
for(int y:i){
System.out.println(y);
}
但不适用于:
int y=2+i2;
System.out.println(y);
为什么 vale() 方法不立即将“i2”值转换为“x”,然后通过使用“x”值进行后续的“i2”计算继续编译....对不起,如果我的问题含糊不清....我只是不知道该怎么说....谢谢
完整代码:
public static void main(String[] args) {
int[] i = { 25, 22 };
int i2 = 41;
val(i);
for (int y : i) {
System.out.println(y);
}
vale(i2);
int y = 2 + i2;
System.out.println(y);
}
public static void val(int[] x) {
for (int c = 0; c < x.length; c++) {
x[c] *= 2;
}
}
public static void vale(int x) {
x += 23;
}
【问题讨论】:
-
你的方法
vale(int x)没有意义。你不能重新影响这样的变量。你必须返回结果,调用者必须处理它。