小白一枚,记录一下自己的点滴,分享给需要的人.
在初学java语言基础时,时不时出现个自增,自减啊,绕的云里雾里的,比如:
int i = 0;
if(i++ < 10 ){
代码……
}
直接上代码和注释:
int i = 0;
int j = 0;
//单独运行的时候,没什么区别,相当于i = i + 1; j = j + 1;
i++;
j++;
System.out.println("自增i = " + i + ", j = " + j); //自增i = 1, j = 1
System.out.println("***********************************");
//++ 在前面称作前自增,先进行自增操作(i = i + 1),
//再进行其他操作(j = i;)。
j = ++i; //反汇编出来的结果相当于: i = i + 1; j = i;
System.out.println("自增i = " + i + ", j = " + j); //自增i = 2, j = 2
System.out.println("=======================");
//++ 在后面称作后自增,先进行其他操作,再进行自增操作。
j = i++; //反汇编出来的结果相当于: j = i; i = i + 1;
System.out.println("自增i = " + i + ", j = " + j); //自增i = 3, j = 2
输出结果,如下:
**需要小心的是,自增,自减(需是变量哦),单独运行的时候,没什么区别,在赋值时,++ 在变量前面和后面的区别是:
++ 在前面称做前自增(例如 ++i)。先进行自增操作(例如 i = i +1),再进行其他操作 (例如 int j = i)。
++ 在后面称做后自增(例如 k++)。先进行其他操作(例如 int s = k),再进行自增操作(例如 k = k +1)。(自减同理可得)**
- 根据目前所学的基础,自增与自减运算符适用于java语言:
基本适用于基本数据类型(例如用于整数类型byte、short、int、long类型,浮点类型float、double类型,还有字符串类型char类型,记住没有布尔类型boolean类型哦),其他的吧还没学到呢,有不足之处,请大家多多指教.
最后用java编程思想里的话当作总结,它们是除那些涉及赋值的操作符以外,唯一具体”副作用”的操作符。也就是说,它们会改变操作数,而不仅仅是使用自己的值。
本文详细解析了Java中自增自减运算符的工作原理及其在不同上下文中的行为表现,帮助初学者理解并正确使用这些特性。
2877

被折叠的 条评论
为什么被折叠?



