java中关于递增和递减两种方式的差别
一、什么是递增和递减?
递增操作符:“++”
理解意思:每次增加一个单位。
递减操作符:“--”
理解意思:每次减少一个单位。
1、前缀式递增和递减(++a或--a)
操作符位于变量或表达式的前面;会先执行运算,再生成值。
数学公式理解:
例:++a (等价于:a=a+1)
int a = 0;
int b = ++a;
先执行:a += 1; (“+= ”解释:将等号右边的值与左边的变量相加,在赋值给左边的变量,例如x+=4等价于x=x+4)
再成值:b = a;
最终a和b的值相等;
a=1,b=1
2、后缀式递增和递减(a++或a--)
操作符位于变量或表达式的后面;会先生成值,再执行运算。
数学公式理解:
例:a++
int a = 0;
int b = ++a;
先成值:b = a;
再执行:a += 1;
最终a大于b;
a = 1, b = 0
3、限制条件:
自增或者自减的数据类型必须是整形或者浮点型变量,既是:int或者double,对于float类型,需要强制转换。
4、代码运行测试:
实例:
假设 a = 4,则:
++a:
b = ++a; // 先将a的值加1,然后赋给b,此时a的值为5,b的值为5.
a++:
b = a++; // 先将a的赋给b,然后a再加1,此时a的值为5,b的值为4.
前自加测试:
后自加测试:
二、总结记忆方法
前缀先加一再赋值,
后缀先赋值再加一;
java中关于递增和递减两种方式的差别相关推荐
- Java中线程的创建有两种方式
Java中继承thread类与实现Runnable接口的区别 Java中线程的创建有两种方式: 1. 通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中 2. 通过 ...
- Java中类加载器获取的两种方式
import org.junit.Test;import java.io.FileInputStream; import java.io.IOException; import java.io.Inp ...
- Java中的string定义的两种方法和区别
java中的String定义的两种方法和区别 第一种:new方式 String s1 = new String("hello world"); String s2 = new St ...
- 指针数组下标JAVA_Java语言中可用下标和指针两种方式表示数组元素。
[判断题]一行可以写多条预处理命令 [判断题]如果一个java程序中有多个类,编译后只生成一个字节码文件,其名字同主类名一致. [判断题]Protected类型的实例变量只能在本类中使用,其他类中不可 ...
- html中获取modelandview中的json数据_从Bitmap中获取YUV数据的两种方式
从Bitmap中我们能获取到的是RGB颜色分量,当需要获取YUV数据的时候,则需要先提取R,G,B分量的值,然后将RGB转化为YUV(根据具体的YUV的排列格式做相应的Y,U,V分量的排列) 所以这篇 ...
- TCP中recv解阻塞的两种方式
TCP中recv解阻塞的两种方式 1.收到客户端发送的数据 2.客户端关闭了套接字,可以通过判断收到数据的长度来判断客户端是否下线,长度为0代表已下线. send操作 1.在阻塞模式下send操作将会 ...
- Java中遍历Map集合的5种方式总结
这篇文章主要给大家介绍了关于Java中遍历Map集合的5种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值. 方式一 通过Map.keySet使用iterator遍历 ...
- java 判断数组已经存满_详解Java中数组判断元素存在几种方式比较
1. 通过将数组转换成List,然后使用List中的contains进行判断其是否存在 public static boolean useList(String[] arr,String contai ...
- java中调用dll文件的两种方法
https://www.cnblogs.com/huozhong/p/5830485.html JNA地址:http://blog.csdn.net/shendl/article/details/35 ...
最新文章
- python写程序求1-3+5-7+...-99+101的值-16-Python3-高价函数-提升效率必备
- python编程工具p-python Gui开发工具选择
- Sqrt(int x) leetcode java
- 怎么测并发 PHP,PHP接口并发测试的方法(推荐)
- python笔记第二天
- java模式匹配_用Java匹配模式
- 小蜜团队万字长文 | 讲透对话管理模型最新研究进展
- java数值精度问题
- sql unicode转中文_汉字转拼音的Java类库 JPinyin
- 【iOS开发】什么是Bundle,每个iOS应用实际上是一个Bundle
- internet缓存Temp中的tmp文件
- 【微信小程序】从零开始搭建一个英语学习小程序01——基础准备
- 循环日程表递归法c语言,分治与递归——循环赛日程表
- 七夕情人节表白网页制作【雪花爱心】
- 羊皮卷之五:假如今天是我生命中的最后一天
- Lodop、C-Lodop页面找不到报404错误解决
- html背景视频模糊效果,怎么给竖屏视频添加模糊背景的效果
- 百度地图开发之——百度地图鹰眼轨迹管理台DEMO-v3部署到服务器上
- 指数式增长(Exponential Growth)
- (四)【Java精选面试题】AQS底层架构设计原理(含答案)