• 首页
        • 更多产品

          客户为中心的产品管理工具

          专业的软件研发项目管理工具

          简单易用的团队知识库管理

          可量化的研发效能度量工具

          测试用例维护与计划执行

          以团队为中心的协作沟通

          研发工作流自动化工具

          账号认证与安全管理工具

          Why PingCode
          为什么选择 PingCode ?

          6000+企业信赖之选,为研发团队降本增效

        • 行业解决方案
          先进制造(即将上线)
        • 解决方案1
        • 解决方案2
  • Jira替代方案
目录

有人告诉我在java的for循环语句中的i++与++i有什么区别

i++与++i的区别是:1、++i是先改变i的值即加1后再使用i的值;而i++是先使用i的值在改变它的值即加;2、for循环内部仅形式不同:当i++循环和++i循环在for循环内部,虽然形式上明显不同,但输出结果可以一样。

一、java的for循环语句中的i++与++i的区别

1、++i是先改变i的值即加1后再使用i的值;而i++是先使用i的值在改变它的值即加。

2、for循环内部仅形式不同:当i++循环和++i循环在for循环内部,虽然形式上明显不同,但输出结果可以一样。

3、printf()输出函数内,不仅形式不同且输出结果也不同:i++和++i,二者在形式上明显不同,且输出结果也不同,输出值分别为1和2。

另外两者的运行时间有差别,当循环此时较少没多少出入,但是当我们循环的次数上去了那么这差距就有点明显了。然后仔细探考后发现:在Java中i++语句是需要一个临时变量取存储返回自增前的值,而++i不需要。这样就导致使用i++时系统需要先申请一段内存空间,然后将值赛如进去,最后不用了才去释放。多了这么一系列操作时间当然多了啊,最后建议大家以后在写for循环且不影响逻辑的情况下多使用++i,少使用i++,这也算一定程度的系统优化

延伸阅读:

二、Java for循环语句

  • 首先执行初始化 ( initialization )步骤,并且仅执行一次。 此步骤用于声明和初始化循环控制变量,此步骤以分号 (; )结束。
  • 接下来,计算布尔表达式 ( boolean_expression )。 如果结果为: true ,则执行循环体。 如果为 false ,则不执行循环体,控制跳转到 for 循环之后的下一个语句。
  • 在执行 for 循环体之后,控件跳回到 update 语句。 此语句用于更新任何循环控制变量。 此语句可以留空,最后是分号 (; )。
  • 现在再次评估布尔表达式 ( boolean_expression )。 如果结果为: true ,则循环执行并重复该过程 (循环体,然后是更新步骤,然后是布尔表达式)。 布尔表达式为 false 后, for 循环终止。
一站式研发项目管理平台 PingCode

一站式研发项目管理平台 PingCode

支持敏捷\瀑布、知识库、迭代计划&跟踪、需求、缺陷、测试管理,同时满足非研发团队的流程规划、项目管理和在线办公需要。

相关文章