我看过这个问题(来自多项选择)“以下程序的输出是什么”:
class array_output {
public static void main(String args[])
{
int array_variable [] = new int[10];
for (int i = 0; i < 10; ++i) {
array_variable[i] = i/2;
array_variable[i]++;
System.out.print(array_variable[i] + " ");
i++;
}
}
}
预期输出为:
1 2 3 4 5
我很清楚,值i
递增两次,首先在循环体中和最后一行。
但我并没有真正了解array_variable[i]++;
行所做的事情。
有什么建议?
在此先感谢您回答这个新手问题!
答案 0 :(得分:1)
修复后的递增和递减运算符在更改其值之前返回变量的值。请考虑以下事项:
int anInt = 0;
System.out.println("anInt: " + anInt);
// anInt: 0
System.out.println("anInt: " + anInt++);
// anInt: 0
System.out.println("anInt: " + anInt);
// anInt: 1
System.out.println("anInt: " + ++anInt);
// anInt: 2
System.out.println("anInt: " + anInt);
// anInt: 2
基本上,anInt++
在递增之前返回anInt
的值。 ++anInt
在返回(新增)值之前递增anInt
的值。
答案 1 :(得分:0)
array_variable[i]++;
将array_variable[i]
中存储的值增加1。