博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java中i++和++i的区别。
阅读量:6859 次
发布时间:2019-06-26

本文共 1705 字,大约阅读时间需要 5 分钟。

java中的一些学习笔记:

先看一段代码:

在java中输入这样一段代码

 

int m = 0; 	for(int i = 0 ; i < 100 ; i++){            m = m ++;         }         System.out.println(m);

是不是很多人认为结果是100!很遗憾,结果为0。

在去C 中看看试试:

int main()	{		int m = 0; 		for(int i = 0 ; i < 100 ; i++){             		m = m ++;         }		cout<

很上面一样么?很遗憾,结果是100.

看来java和C 是不一样的。

在来看下下面的一些例子:

public static void method1(){		int x = 5;		System.out.print("x+++1+x++ : ");		System.out.println(x++ +1 + x++);		//5+1+6			}	public static void method2(){		/***		这里的method2和method3的执行顺序是不一样的。		*/		int x = 5;		System.out.print("(x++)+x : ");		System.out.println((x++)+x);			//5+6	}	public static void method3(){				int x = 5;		System.out.print("x+(++x) : ");		System.out.println(x+(++x));			//5+6	}	public static void method4(){				int x = 5;		System.out.print("x+++1 : ");		System.out.println(x++ +1);				//5+1	}	public static void method5(){				int x = 5;		--x;									//4		System.out.print("--x : ");		System.out.println(x);	}	public static void method6(){				int x = 5;								//-6		System.out.print("~x : ");		System.out.println((~x));	}	public static void method7(){		int x = 5;		int q = 0;				q = (++x) +(++x) + (++x);			//6+7+8		System.out.print("(++x) + (++x) + (++x) :");		System.out.println(q);	}	public static void method8(){		int x = 5;		int q = 0;		q = ++x+x+++1+x++;					//6+6+1+7		System.out.print("++x + x + ++1 + x++ :");		System.out.println(q);	}	public static void method9(){		int x = 5;		int q = 0;		q = ++x + ++x + x + ++x;			//6+7+7+8		System.out.print("++x + ++x + x + ++x :");		System.out.println(q);	}

很多人不知道准确的说出结果是多少。
利用javap命令。 javap -c 文件名.可以看到准确的字节码执行顺序。去看看java是如何执行的。

这样你将会不在疑惑。

 

转载于:https://www.cnblogs.com/yangzhi/archive/2012/10/16/3576639.html

你可能感兴趣的文章
Flask 第四篇 Flask 中的模板语言 Jinja2 及 render_template 的深度用法
查看>>
PHP输出缓冲
查看>>
Windows2003上使用IIS7 Express使用FastCgi运行php
查看>>
安装程序时 “向数据库写入数据时发生错误!”
查看>>
图文:高春辉和他的网站梦
查看>>
网页之间的参数传递
查看>>
HTML5 做波形运动的小球
查看>>
初步学习Django-第四篇:views.PY文件详解
查看>>
OAuth2简易实战(四)-Github社交联合登录
查看>>
Netty学习大纲
查看>>
OC中的私有方法
查看>>
20060427: 部分汉化Together Workflow Editor
查看>>
CentOS中配置VNC Server
查看>>
Table '.\mysql\proc' is marked as crashed and should be repaired 报错
查看>>
分享几段JavaScript
查看>>
C++中的多态和Objective-C中的“多态”
查看>>
js基础五
查看>>
构建执法阅读笔记01
查看>>
【Update】C# 批量插入数据 SqlBulkCopy
查看>>
剑指offer:合并两个排序的链表
查看>>