关于java的自增自减运算符

Python016

关于java的自增自减运算符,第1张

Java自增和自减运算符 ++和--

i++ 将 i 的值先使用再加 1 赋值给 i 变量本身 int i=1int j=i++i=2 j=在对一个变量做加 1 或减 1 处理时,可以使用自增运算符 ++ 或自减运算 --

i++ 将 i 的值先使用再加 1 赋值给 i 变量本身

int i=1int j=i++

结果

i=2 j=1

自增(++)和自减(--)运算符

在JAVA语言中存在着很多运算符,但是在实际开发中我们或许很少用到它们,在初次学习中却时常出现它们的身影,对于这些运算符的含义和用法,是否还记得呢?下面让我们来看看下面几段Java代码

int i = 0

int j = i++

int k = --i

这段代码运行后,i等于多少?j等于多少?k等于多少?相信对于这段代码应该没有问题,因为很简单。结果为:i=0,j=0,k=0。那下面这段呢?

int i = 0

int j = i++ + ++i

int k = --i + i--

代码执行后i、j、k分别等于多少呢?答案为i=0,j=2,k=2。不知道对这个结果有没有疑问呢?起初我第一眼扫过去的结果和真正的执行结果是不同的,也就是我判断错了。也许会问,怎么这么简单的问题都弄错呢?是的,有时稍微不注意真会出错。这看的就是我们对Java运算符优先级的认识。来,继续看下面这段代码:

int i=0

System.out.println(i++)

这段代码运行后输出结果是什么?0?1?答案当然是i=0。这个是毋庸置疑的。接着看下面这段代码:

float f=0.1F

f++

double d=0.1D

d++

char c='a'

c++

上面这段代码可以编译通过并执行吗?答案是肯定的。如果此时对上面说的都没有问题,那么就可以说明对自增自减运算符已经掌握的很好了。现在就让我们还回顾一下相关知识:

自增(++):将变量的值加1,分前缀式(如++i)和后缀式(如i++)。前缀式是先加1再使用;后缀式是先使用再加1。

自减(--):将变量的值减1,分前缀式(如--i)和后缀式(如i--)。前缀式是先减1再使用;后缀式是先使用再减1。

自增与自减运算符还遵循以下规律:

1. 可以用于整数类型byte、short、int、long,浮点类型float、double,以及字符串类型char。

2. 在Java5.0及以上版本中,它们可以用于基本类型对应的包装器类Byte、Short、Integer、Long、Float、Double、Character。

3. 它们的运算结果的类型与被运算的变量的类型相同。