zoukankan      html  css  js  c++  java
  • 生活点滴:java基础知识细化

    生活点滴:java基础知识细化

    一、前言

        越是对一门语言深入了解,就会发现自己不知道的东西越多,这才是走向了正道,同样的,对于java语言特性的学习,笔者也只是初窥门径。

    二、java基础知识思考

      i=i++

       首先我们来看一下“i=i++”这个语句的执行原理。

         首先我们编译运行一下:

        可以看到执行的结果为0,为什么呢,我们反编译A.class。

        我们可以看到编号为2,3,6的三段汇编代码,其中2代表着将i的值读入一个变量之中,3表示将读到的i值自增,6代表将存入临时变量中的值重新写入i中,因此之后打印出来的还是i本身。

         这个过程可以表示如下:

    temp=i;
    i++;
    i=temp;
    

        因此在java中,使用i=i++并不能达到自增的目的,反而是原地踏步,而在C语言中可能会有不同的结果,这与编译器最终的解释执行有关。

  • 相关阅读:
    FullCalendar日历插件说明文档
    Git忽略规则及.gitignore规则不生效的解决办法
    学习git config配置文件
    拼接最长回文串
    Gildong owns a bulgogi restaurant
    前m大的数
    求水洼(dfs)
    循环数组的最大子段和
    求叶子节点
    周期
  • 原文地址:https://www.cnblogs.com/zyrblog/p/10886192.html
Copyright © 2011-2022 走看看