我正在进行一些练习,但我对此感到困惑:
public static int f (int x, int y) {
int b=y--;
while (b>0) {
if (x%2!=0) {
--x;
y=y-2;
}
else {
x=x/2;
b=b-x-1;
}
}
return x+y;
}
Run Code Online (Sandbox Code Playgroud)
目的是b=y--什么?因此,例如,x=5并且y=5
当我们第一次进去的,而环(while (b>0))将b= 4或5?当我运行时,我的计算机中的代码b是5.而返回的是3.我真的不清楚.对不起,如果我的问题不清楚.
int b=y--;首先是assignes b=y然后减少 y(y--).
另请查看前缀/后缀一元增量运算符.
此示例(取自链接页面)演示了:
class PrePostDemo {
public static void main(String[] args){
int i = 3;
i++;
// prints 4
System.out.println(i);
++i;
// prints 5
System.out.println(i);
// prints 6
System.out.println(++i);
// prints 6
System.out.println(i++);
// prints 7
System.out.println(i);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6192 次 |
| 最近记录: |