简单而又复杂的++i和i++
2017-02-20 11:13
197 查看
面试遇到一个java初学时就已经涉及到的++i和i++的问题,原题为:
虽不是大问题,但我觉得有必要在此说明一下。以下为验证实例:
以上结果可通过以下结构进行说明:
= i + 1运算。
System.out.println(i++ + ++i);//求值
虽不是大问题,但我觉得有必要在此说明一下。以下为验证实例:
public static void main(String[] args) { int i = 1; System.out.println((i + ++i) + " " + i); //1 + 2 i = 1; System.out.println((i++ + ++i) + " " + i); //1 + 3 i = 1; System.out.println((++i + i++) + " " + i); //2 + 2 i = 1; System.out.println((++i + ++i) + " " + i); //2 + 3 i = 1; System.out.println((i++ + i++) + " " + i); //1 + 2 }打印结果如下:
3 2 4 3 4 3 5 3 3 3
以上结果可通过以下结构进行说明:
/** * i++ //return i; i = i + 1; * ++i //i = i + 1; return i; */即++i表示先进行运算i = i + 1,再返回i的值;而i++则表示先返回i的值,再进行i
= i + 1运算。
相关文章推荐
- 异常处理,简单而又复杂的问题
- 异常处理,简单而又复杂的问题
- 简单而又复杂的ASP.NET编程模型
- 朋友是一个问题简单而又复杂的概念
- WCF,简单而又复杂的东西
- 简单而复杂的未来(一)
- DataGrid实例(简单易懂,无复杂功能,适合初学者)
- 注入的几条简单语句,不用像网上那样复杂
- 简单和复杂
- 一道简单而又容易出错的题目
- biztalk 2006 安装详细截图,相对安装过程复杂容易出错的biztalk2004来讲,安装算是非常简单了
- 将Asp.net从VS2003以及VS2002工程转换为VS2005工程的简单而又行之有效的方法
- Java中关于String的简单而又深入的问题!
- 一个看似简单却复杂的问题:求两个字符串的 左向右匹配 所有的 最长连续的 公共子字符串( 在每个字符串中先后次序相同的) 序列
- 一道简单题目的复杂算法
- 最简单的事情原来最复杂~~
- DataGrid实例(简单易懂,无复杂功能,适合初学者)
- [软件开发过程]反模式:简单的部分留在需求人员的脑海中,只描述最复杂的部分给我们听
- DataGrid实例(简单易懂,无复杂功能,适合初学者)