for循环中i++和++i 的区别(转载)
++i是先执行i=i+1再使用i的值,而i++是先使用i的值再执行i=i+1;
for循环的执行顺序是这样的:
for(a;b;c){
d;
}
进入for循环,首先执行起始语句a,然后判断语句b是否满足,满足的话再执行循环体d,执行完循环体后执行c语句,再反复循环。
当执行for循环语句时,我们不难发现,无论c语句是i++还是++i,最后输出的结果都是一样的。
难道就没有区别吗?
区别肯定是有的——就是运行时间的差别。
java中i++语句需要一个临时变量存储自增前i的值,而++i不需要。这样就导致使用i++时系统需要先申请一段内存空间,然后将值塞进去,最后不用了才去释放。多了这么一系列操作时间。
所以如果循环中想要操作时间更少的话,不妨使用++i,能让程序跑的更快一点。
声明:本文转载于Java中for循环的i++和++i区别
for循环中i++和++i 的区别(转载)的更多相关文章
- while循环中continue和break的区别
除了满足while条件外,还有两种方法可以终止循环,它们分别是break和continue.它们唯一的区别是break跳出整个循环,直接执行下面的代码了;而continue是终止当次循环,不执行下面的 ...
- for循环中let与var的区别,块级作用域如何产生与迭代中变量i如何记忆上一步的猜想
我在前一篇讨论let与var区别的博客中,顺带一笔带过了let与var在for循环中的不同表现,虽然解释了是块级作用域的影响,但具体是怎么去影响的呢,我尝试的去理解了下,这篇博客主要从for循环步骤拆 ...
- for循环中break与continue的区别
1.for循环 for循环是更加简洁的循环语句,大部分情况下,for循环可以代替while循环.do-while循环. for循环的格式为: for( 初始语句 ; 执行条件 ; 增量 ){循环体}执 ...
- 循环中continue和break的区别
continue是指跳出本次循环 进入下次循环 再来一次 break是指循环结束 再也不来了 可以用一个广告来解释这个区别 这是continue 房:Hi 郭:是你啊 房:我订的书到了吗 房:啊!对了 ...
- AJPFX总结在循环中break与continue的区别
相信刚学编程的人很容易被break,continue这两个关键词搞混淆了,两者都有跳出循环的意思,但是他们到底有什么区别呢?其实很简单,break是结束整个循环体,continue是结束当前这一单次循 ...
- for循环中break和continue的区别
break 会立即退出循环,强制执行循环后面的语句 默认只会终止紧邻的循环,如果要终止其他循环,需要给循环起名字 例如: name:for(var i = 0; i < 5; i++){ for ...
- for循环中 i++和++i 是否有区别?
正常情况下 i++和++i是有区别的: 前者是:先引用,后增加, 后者是:先增加,后引用, 但是在for循环中: for(var i=0;i<10;i++){ System.out.print ...
- for循环中i--的妙用 及 两变量互换数值的问题
int[] array = new int[4]; for(int i = 0; i < array.length; i++){ array[i] = (int)(Math.random() * ...
- Python 之 for循环中的lambda
第一种 f = [lambda x: x*i for i in range(4)] (如果将x换成i,调用时候就不用传参数,结果都为3) 对于上面的表达式,调用结果: >>> f ...
随机推荐
- unity3d之public变量引发错误
public变量引发错误 在vs ide中怎么更改也无效 后来发现public里面的值一直不改变,手动改之.
- Servlet监听器统计网站在线人数
本节我们利用 Servlet 监听器接口,完成一个统计网站在线人数的案例.当一个用户登录后,显示欢迎信息,同时显示出当前在线人数和用户名单.当用户退出登录或 Session 过期时,从在线用户名单中删 ...
- golang中sha256、md5加密,base64encode、base64decode
package tool import ( "crypto/md5" "crypto/sha256" "encoding/base64" & ...
- URL Rewrite(四种重定向策略)
目录 一:Rewrite基本概述 1.Rewrite简介 2.Rewrite基本概述 3.Rewrite作用 4.什么是URL? 二:rewrite语法 三:Rewrite标记Flag 1.last和 ...
- linux挂载windows nfs
1.win下创建nfs文件夹并共享 2.登陆linux,执行 yum 3.创建挂载点 4.挂载win nfs 5./etc/fstab添加永久挂载 6.查看挂载磁盘,此时windows盘已落在linu ...
- 随机IP代理插件Scrapy-Proxies
安装: pip install scrapy_proxies github: https://github.com/aivarsk/scrapy-proxies scrapy爬虫配置文件setti ...
- 用了这么久 Linux ,才知道这些概念。。。
Linux 和 UNIX 中的文件系统是一个以 / 为根的树状式文件结构,/ 是 Linux 和 UNIX 中的根目录,同样它也是文件系统的起点.所有的文件和目录都位于 / 路径下,包括我们经常听到的 ...
- 2020-9-29 T3
题意:给定一颗大小为 \(n(n \le 5 \times 10 ^ 4)\) 的树,保证树的生成方式随机,你需要选定两个点 \(x, y\),最小化: \[\sum\limits_{i = 1} ^ ...
- jQuery EasyUI 的editor组件使用
问题:最近在优化一个项目时,前端用到了 easyui这个插件来实现表格,搞了很久,才实现出一部分功能,但是还是有很多地方不熟悉,故记录一下,以后再研究 第一个实例------------------- ...
- 【转】MySql根据经纬度获取附近的商家
创建geo表 create table geo( geo_id INT NOT NULL AUTO_INCREMENT, lng float NOT NULL, lat float NOT NULL, ...