JAVA算 术 运 算 符 的 使 用

public class ArithmaticOp{

public static void main( String args[] ){

int a=5+4; //a=9

int b=a*2; //b=18

int c=b/4; //c=4

int d=b-c; //d=14

int e=-d; //e=-14

int f=e%4; //f=-2

double g=18.4;

double h=g%4; //h=2.4

int i=3;

int j=i++; //i=4,j=3

int k=++i; //i=5,k=5

System.out.println("a = "+a);

System.out.println("b = "+b);

System.out.println("c = "+c);

System.out.println("d = "+d);

System.out.println("e = "+e);

System.out.println("f = "+f);

System.out.println("g = "+g);

System.out.println("h = "+h);

System.out.println("i = "+i);

System.out.println("j = "+j);

System.out.println("k = "+k);

}

}

其结果为:

C:\>java ArithmaticOp

a = 9

b = 18

c = 4

d = 14

e = -14

f = -2

g = 18.4

h = 2.4

i = 5

j = 3

k = 5
在这个程序中以下的程序,请问这是怎么算出得来的结果。
int f=e%4; //f=-2

double g=18.4;

double h=g%4; //h=2.4

int i=3;

int j=i++; //i=4,j=3

int k=++i; //i=5,k=5
谢谢帮助。。。。。
最新回答
深蓝菇凉

2024-08-14 00:20:52

第一:
int f=e%4;
因为上面的e已经为-14(int e=-d; //e=-14
),所以这里拿-14%4,结果自然是-2。
第二:
double h=g%4;
同样,因为之前给g赋值为18。4,所以拿18。4%4,结果就是2。4.
第三:
j=i++的意思是,先把i的值赋给j,然后i再自加1,之前定义了i=3,所以这里j=3,然后i自加1,就是4。
第五:
k=++i的意思是,先把i自加1的值赋给k,因为上面i的值已经是4,所以这里k=5,i自加1后的值也就是5。
风花雪月夜

2024-08-14 01:08:42

% 是取余数
e%4 = -14/4的余数,因为-14 = -3 * 4 - 2 ,所以e%4 = -2

j = i++,此运算法则是现价i赋值给j,然后i自加1
k = ++i, 此运算法则是先将i自加,然后赋值给k