`

回想起刚学编程时i++和++i的问题

 
阅读更多

 

int count=0;
for(int i=0;i<10;i++){
     count=count++
}
System.out.println("count="+count)

 如上代码 count会是几呢?结果是0.

 

因为jvm对这段代码的处理步骤是这样的:

1,jvm把count拷贝到临时变量区

2,count加1,这时count是1了

3,返回临时变量区的值,这个时候值是0,不是1.

4,返回值赋值给count,此时count被重置成0了

 

如果你想得到10的结果,你应该直接count++

 

ps:不是所有的语言版本的这段代码都是0的。保险的来说都写成count++吧

分享到:
评论

相关推荐

    c++课件I清华大学.7z

    总之,清华大学的C++课件将全面覆盖以上知识点,帮助学习者建立起坚实的C++编程基础,并逐步进阶到更高级的主题,如模板元编程、并发编程和C++11及后续标准的新特性。通过深入学习,你将能够利用C++解决复杂问题,...

    芯达STM32入门系列教程之一《如何提高STM32的学习效率》

    遇到不懂的地方,可以通过记笔记的方式留下印象,以便将来遇到类似的问题时能够迅速回想起相关的信息。这种方式的学习效率比无目的翻阅要高得多。 ##### 1.3 学STM32必备开发板 理论学习虽然重要,但实践同样不可...

    Python-一个Python中复古RPG游戏Maker

    RPG游戏通常包含丰富的剧情、角色扮演和战斗系统,而复古风格则让人回想起8位和16位时代的经典游戏。 RPG游戏Maker的核心是其引擎,它处理游戏逻辑、渲染图形、播放音效以及与用户交互。在Python中开发这样的工具,...

    C#基础试题,和常用字符串例子

    本资源摘要信息涵盖了C#基础试题和常用字符串例子,总共包括24个问题和例子,涵盖了C#基础知识、字符串定义、字符串方法、字符串操作等方面,旨在帮助读者快速掌握C#基础知识和字符串操作。 一、C#基础试题 1.什么...

    Oracle 8i PL_SQL高级程序设计

    记得本人进入东软后,第一次接触Oracle的研发,就是通过此书学习的Pl/Sql编程,进而逐步深入Oracle的开发,回想起来受益匪浅,现在作为一名J2EE架构设计师,还是经常愿意将这本书推荐给新入职的新人们,希望他们通过...

    基于AT89S52 单片的频率计

    ②不需并行编程器仅需用P15,P16 和P17,这三个IO 仅仅是下载程序的时 候使用,并不影响程序的使用。 ③结合上位机软件免费就可实现PC 对其编程硬件电路连接简单如图3.3 所 示。 104 C3 1K R1 S1 VCC D1 1N4007 ...

    PWM控制器评估套件,快速测试寄存器的设置和模式选择-电路方案

    它主要通过 USB 到 IC 2 接口电子狗起作用。这个电子狗还使控制器的不同引脚实现逻辑 (GPIO) 控制。该软件允许用户互动和评估 ISL78226 PWM 控制器的所有方面。 它设计的宗旨是使用户能快速测试寄存器的设置和模式...

    nw开发工具

    nw.js的全称是"Node.js WebKit",融合了Node.js的服务器端JavaScript运行环境与Chromium浏览器的渲染引擎,使得开发者可以充分利用Node.js的I/O非阻塞特性和Chrome的高性能渲染能力。 标题中的"nw开发工具"指的就是...

    iTunes酒吧外观

    这些控件可以是按钮、滑块、列表视图等,它们在视觉上和功能上都能让用户回想起iTunes的体验。开发过程中,可能涉及到.NET Framework 2.0,这是一个广泛使用的Microsoft开发平台,为各种应用程序提供基础支持。此外...

    guessings_game:我做过的第一个程序是一个野蛮的猜谜游戏,如果您给出正确的答案并告诉您您猜错了名字,那就撒谎。 这个示例Rust程序使我回到了那时,并受到我构建的原始程序的启发

    这个名为"guessings_game"的项目显然是一款基于Rust编写的猜数字游戏,它让我们回想起编程初学者的经典练习。这个游戏的目标是让玩家猜测一个预设的数字,然后根据反馈调整他们的猜测。 首先,我们要理解Rust的基本...

Global site tag (gtag.js) - Google Analytics