这几个运算符的差别总是过一段时间就爱搞混,每次需要百度,还是自己记录一下方便查阅。

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

随机推荐

  1. 机器学习前沿热点——Deep Learning

    深度学习是机器学习研究中的一个新的领域,其动机在于建立.模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像.声音和文本.深度学习是无监督学习的一种. 深度学习的概念源于人工神经网络的 ...

  2. 获取服务器IP,客户端IP

    客户端IP相关的变量 1. $_SERVER['REMOTE_ADDR']; 客户端IP,有可能是用户的IP,也有可能是代理的IP. 2. $_SERVER['HTTP_CLIENT_IP']; 代理 ...

  3. 使用SwingWorker为界面执行异步任务

    ------------------siwuxie095                             工程名:TestSwingWorker 包名:com.siwuxie095.swing ...

  4. 连接mysql时报:message from server: "Host '192.168.76.89' is not allowed to connect to this MySQL server 处理方案

    1.先用localhost方式连接到MySQL数据库,然后使用MySQL自带的数据库mysql; use mysql: 2.执行:select host from user where user = ...

  5. C# 字符串转JSON

    一.简单小结 C# 中 String 转 JSON var items = JsonConvert.DeserializeObject<class>(stringJSON); 这里的 cl ...

  6. CodeForces 106C 【DP】

    题意: n g dough  m种商品? 每种有ai stuffing, 拿bi stuffing + ci dough -> di tugriks rest c0 dough -> d0 ...

  7. git 修改远程仓库源

    自己已经写好了一个项目,想上传到 github github 创建新项目 新建 README.md , LICENSE 本地项目添加 github 远程仓库源 不是git项目 git remote a ...

  8. [Django笔记] Apache + mod-wsgi 环境部署所遇到的各种问题总结

    在一台CentOS7机器上配置Django+apache运行环境 Django安装 python2 or python3 ? 一般情况下Linux系统都有自带python2,本机CentOS7上的是p ...

  9. puppet的一个Bug

    前篇文章写了使用puppet管理500多台服务器,当然只是一部分,最主要的还是puppet脚本的编写,这个我会在以后的文章中一点一点写出来. 今天要写的是puppet的一个bug,版本是puppet ...

  10. jquery封装多棵并列树

    起因:当前的树都是在一棵树上,应产品需求,现在需要将一级菜单并列开,然后往下铺,这样只好自己写了. demo图: 我直接封在了jquery上,此外还加了获取勾选数据的一些简单API. 思路:先把一级菜 ...