1.运算符
+ - * / % ++ --
注意:
System.out.println(10 / 4); 输出为2
System.out.println(10.0 / 4); 输出为2.5
double result = 10 / 4; 输出为 2.0
取余(取模) %
System.out.println(10 % 3); 1
System.out.println(-10 % 3); -1
System.out.println(-10 % -3); -1
原因:取模公式为 a % b = a - a / b * b
自增 ++
- 作为独立语句使用时 i++ ++i 完全等价为i = i + 1
- 作为表达式使用时 ++i 先自增再赋值 i++ 先赋值再自增
int k = 9;
int j = k++;
System.out.println("k=" + k + "j=" + j); //结果为j = 9 k = 10
面试题
int i = 1;
i = i++;
System.out.println(i); //输出为1 (1)temp(临时变量) = i; (2)i = i + 1; (3)i = temp;
i = ++i;
System.out.println(i); //输出为2 (1)i = i + 1; (2)temp = i; (3)i = temp;
tips:
可采用内存分析法检测每步运行