Java一元操作符++详解
废话不多说,直接上代码。
package com.coshaho.learn; /**
*
* OperatorLearn.java Create on 2016-11-13 下午8:38:15
*
* 类功能说明: 深入理解++操作符
*
* Copyright: Copyright(c) 2013
* Company: COSHAHO
* @Version 1.0
* @Author coshaho
*/
public class OperatorLearn
{
// 一元操作符,赋值操作符,三目操作符从右向左运算,其他操作符从左向右运算
// ++x步骤:1.返回x+1;2.执行x = x + 1;
// x++步骤:1.返回x;2.执行x = x + 1;
public static void main(String[] args)
{
int x = 1;
// 步骤1. 计算y(默认值0);
// 步骤2. (x++)返回x值给临时变量c,为1;
// 步骤3. x = x + 1,x为2;
// 步骤4. 计算x,x为2;
// 步骤5. y = 临时变量c + 2 = 1 + 2 = 3.
int y = (x++) + x;
System.out.println("x = " + x);
System.out.println("y = " + y); x = 1;
// 步骤1. 计算y(默认值0);
// 步骤2. (++x)返回x+1值给临时变量c,为2;
// 步骤3. x = x + 1,x为2;
// 步骤4. 计算x,x为2;
// 步骤5. y = 临时变量c + 2 = 2 + 2 = 4.
y = (++x) + x;
System.out.println("x = " + x);
System.out.println("y = " + y); x = 1;
// 步骤1. 计算y(默认值0);
// 步骤2. 计算x,为1;
// 步骤3. (++x)返回x+1值给临时变量c,为2;
// 步骤4. x = x + 1,x为2;
// 步骤5. y = 1 + c = 1 + 2 = 3.
y = x + (++x);
System.out.println("x = " + x);
System.out.println("y = " + y); x = 1;
// 步骤1. 计算y(默认值0);
// 步骤2. 计算x,为1;
// 步骤3. (x++)返回x值给临时变量c,为1;
// 步骤4. x = x + 1,x为2;
// 步骤5. y = 1 + c = 1 + 1 = 2.
y = x + (x++);
System.out.println("x = " + x);
System.out.println("y = " + y); x = 1;
// 1.计算x,为1;
// 2.计算(x++)返回1给临时变量c
// 3.x = x + 1,为2;
// 4.计算x = 1 + c = 1 + 1 = 2;
x += (x++);
System.out.println("x = " + x); int[] xx = {1,3};
int i = 0;
xx[i++] *= 2;
System.out.println("xx[0] = " + xx[0] + ", xx[1] = " + xx[1]); xx = new int[]{1,3};
i = 0;
xx[i++] = xx[i++] * 2;
System.out.println("xx[0] = " + xx[0] + ", xx[1] = " + xx[1]); /**
* 输出
* x = 2
y = 3
x = 2
y = 4
x = 2
y = 3
x = 2
y = 2
x = 2
xx[0] = 2, xx[1] = 3
xx[0] = 6, xx[1] = 3
*/
}
}
Java一元操作符++详解的更多相关文章
- Java 字符串格式化详解
Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...
- Java 序列化Serializable详解
Java 序列化Serializable详解(附详细例子) Java 序列化Serializable详解(附详细例子) 1.什么是序列化和反序列化Serialization(序列化)是一种将对象以一连 ...
- Java String类详解
Java String类详解 Java字符串类(java.lang.String)是Java中使用最多的类,也是最为特殊的一个类,很多时候,我们对它既熟悉又陌生. 类结构: public final ...
- 最新java数组的详解
java中HashMap详解 http://alex09.iteye.com/blog/539545 总结: 1.就像引用类型的数组一样,当我们把 Java 对象放入数组之时,并不是真正的把 Java ...
- JAVA IO 类库详解
JAVA IO类库详解 一.InputStream类 1.表示字节输入流的所有类的超类,是一个抽象类. 2.类的方法 方法 参数 功能详述 InputStream 构造方法 available 如果用 ...
- 转:Java HashMap实现详解
Java HashMap实现详解 转:http://beyond99.blog.51cto.com/1469451/429789 1. HashMap概述: HashMap是基于哈希表的M ...
- 淘宝JAVA中间件Diamond详解(2)-原理介绍
淘宝JAVA中间件Diamond详解(二)---原理介绍 大家好,通过第一篇的快速使用,大家已经对diamond有了一个基本的了解.本次为大家带来的是diamond核心原理的介绍,主要包括server ...
- 【转】 java中HashMap详解
原文网址:http://blog.csdn.net/caihaijiang/article/details/6280251 java中HashMap详解 HashMap 和 HashSet 是 Jav ...
- Mac下Intellij IDea发布Java Web项目详解五 开始测试
测试前准备工作目录 Mac下Intellij IDea发布Web项目详解一 Mac下Intellij IDea发布Java Web项目(适合第一次配置Tomcat的家伙们)详解二 Mac下Intell ...
随机推荐
- 170814、Java使用gzip压缩文件、还原文件
package com.rick.utils; import java.io.*; import java.util.zip.GZIPInputStream; import java.util.zip ...
- Asp.net MVC]Asp.net MVC5系列——Routing特性
目录 概述 路由特性 使用路由 可选参数和参数的默认值 路由前缀 默认路由 路由约束 自定义路由约束 路由名 区域(Area) 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列— ...
- ELK之收集tomcat访问日志
把tomcat访问日志转换成json格式然后收集 修改配置文件conf/server.xml把日志输出改成json格式 添加logstash配置文件(日志按天切割可以使用*进行匹配所有)
- Flask 学习篇一: 搭建Python虚拟环境,安装flask,并设计RESTful API。
前些日子,老师给我看了这本书,于是便开始了Flask的学习 GitHub上的大神,于是我也在GitHub上建了一个Flask的项目. 有兴趣可以看看: https://github.com/Silen ...
- ZOJ 3777 - Problem Arrangement - [状压DP][第11届浙江省赛B题]
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3777 Time Limit: 2 Seconds Me ...
- bin/hdfs dfs命令存在WARN util.NativeCodeLoader问题消除方法
例如:[hadoop@db01 hadoop-2.5.0]$ bin/hdfs dfs -ls17/03/01 21:50:33 WARN util.NativeCodeLoader: Unable ...
- 3322.org
3322.org — Krebs on Security https://krebsonsecurity.com/tag/3322-org/
- 6.2.3 Property Access Errors
JavaScript: The Definitive Guide, Sixth Edition by David Flanagan Property access expressions do n ...
- PHP之文件上传
1.$_FILES['myFile']['name'] 上传文件的原始名称 2.$_FILES['myFIle']['type'] 上传文件的mime-type 3.$_FILES['myFile'] ...
- vue - vue-cli脚手架安装和webpack-simple模板项目生成
ue-cli 是一个官方发布 vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue 项目. GitHub地址是:https://github.com/vuejs/vue-cli 一.安 ...