i++ ++i i=i+1 和i+=1
这几个运算符的差别总是过一段时间就爱搞混,每次需要百度,还是自己记录一下方便查阅。
int i=0;
System.out.println(i++);
输出:0
int i=0;
System.out.println(++i);
输出:1
int i=0;
System.out.println(i=i+1);
输出:1
int i=0;
System.out.println(i+=1);
输出:1
发现,其它都可以自增,i++仍然是原来的值没有变。
i=i+1跟i+=1一样,只是后者效率更高。
i++先赋值后自增,++i先自增后赋值。
int i=0;
i=++i;
System.out.println(i);//输出:1
int i=0;
i=i++;
System.out.println(i);//输出:0
i++程序详细处理步骤如下: 步骤1 JVM把右边i值(其值是0)拷贝到临时变量区。 步骤2 右边值加1赋值给左边i,这时候左边i的值是1。 步骤3 返回临时变量区的值,注意这个值是0,没修改过。 步骤4 返回值赋值给左边i,此时i值被重置成0
例子:
int i=0,j=0;
j=i++;//j=i,i=i+1
System.out.println(i);//输出1
System.out.println(j);//输出0
随机推荐
- springmvc chrome jsonviewer 一起请求 重复提提交 controller重复执行 2次执行
情况一: springmvc chrome jsonviewer 一起请求 重复提提交 controller重复执行 2次执行 Chrome浏览器地址栏访问接口url,重复请求问题解决 不论刷新还 ...
- SharePoint 无法“使用资源管理器打开”
提示错误信息: 在文件资源管理器中打开此位置时遇到问题.将此网站添加到受信任的站点列表,然后重试. 服务器情况: 安装 Internet Explorer 10 后,在 Windows 资源管理器中打 ...
- windows、Linux 测试服务器、电脑的某些个端口是否打开
测试远程端口是否开放包括两种方法: 一. 命令行的形式 二.代码 先参考我的博客 windows.Linux 开放端口 一.命令行的形式 两个命令:telnet.nc(netcat) 两种网络层协议: ...
- C#中小数转化为string的问题
在C#中,把小数转化为string, 比如 45.12, 转换为string时,应该就是"45.12" 但是在项目开发中,开发法国的branch时,由于culture使用的是FR- ...
- Hashtable类中的四种遍历方法对比
要遍历一个Hashtable,api中提供了如下几个方法可供我们遍历: keys() - returns an Enumeration of the keys of this Hashtable ke ...
- ApiDoc 一键生成注释
本文来自网易云社区. 作者:盛国存 背景 我们日常在使用ApiDoc维护管理api文档,提高了api文档的整体维护性.但在老旧接口中,补充接口注解无疑是一次繁重的体力劳动.仔细查看,大多数接口的格式 ...
- Linux中常用压缩命令
.zip格式压缩 zip 压缩文件名 源文件 压缩文件 zip -r 压缩文件名 源目录 压缩目录 .zip格式解压缩 unzip 压缩文件 解压.zip文件 .gz格式压缩 gzip 源文件 压缩为 ...
- linux---安装ftp并配置用户部分权限
一.启动vsftpd服务1. 启动VSFTP服务器A:cenos下运行:yum install vsftpdB. 登录Linux主机后,运行命令:”service vsftpd start”C. 要让 ...
- Jade(Pug) 模板引擎使用文档
本篇内容 在 Express 中调用 jade 模板引擎 jade 变量调用 if 判断 循环 Case 选择 在模板中调用其他语言 可重用的 jade 块 (Mixins) 模板包含 (Includ ...
- Java SE自学阶段的笔记整理
其他知识点 1.String和Char的区别: (1)String是字符串类型,Char是字符类型: (2)Char要用单引号,String要用双引号: (3)String是一个类,具有面向对象的特性 ...