有些运算符在JAVA语言中存在着,但是在实际开发中我们或许很少用到它们,在面试题中却时常出现它们的身影,对于这些运算符的含义和用法,你是否还记得呢
自增(++)和自减(--)运算符 我们先来回答几个问题吧: Java代码 1
int i = 0; 2
int j = i++; 3
int k = --i; 这段代码运行后,i等于多少
好,继续: Java代码 1
int i = 0; 2
int j = i++ + ++i; 3
int k = --i + i--; 代码执行后i、j、k分别等于多少呢
好,再继续: Java代码 1
int i=0; 2
System
println(i++); 这段代码运行后输出结果是什么
Java代码 1
float f=0
f++; 3
double d=0
d++; 5
char c='a'; 6
c++; 上面这段代码可以编译通过吗
如果你能顺利回答到这里,说明你对自增和自减运算符的掌握已经很好了
为了分析出上面提出的几个问题,我们首先来回顾一下相关知识: 自增(++):将变量的值加1,分前缀式(如++i)和后缀式(如i++)
前缀式是先加1再使用;后缀式是先使用再加1
自减(--):将变量的值减1,分前缀式(如--i)和后缀式(如i--)
前缀式是先减1再使用;后缀式是先使用再减1
在第一个例子中,int j=i++;是后缀式,因此i的值先被赋予j,然后再自增1,所以这行代码运行后,i=1、j=0;而 int k=--i;是前缀式,因此i先自减1,然后再将它的值赋予k,因此这行代码运行后,i=0、k=0
在第二个例子中,对于 int j=i++ + ++i;,首先运行i