zoukankan      html  css  js  c++  java
  • 《Java深入解析》阅读笔记二(运算符与表达式)

    ---恢复内容开始---

    1. i+++j如何计算
      1. +++的运算
        1. i+++j的结合运算是:(i++)+j。
      2. 贪心规则
        1. 因为编译器极度的“贪心”,所以他会尽可能多的结合有效的符号,而不管结合以后是否会符合符号语法的规则
          1. 例如:a--b,我们是想a减去-b但是由于“--”是有效的符号,所以他们会组合在一起,所以结构就变成了a-- b,这样不符合语法规则,所以会编译错误。
      3. 何为贪心
        1. 贪心规则会尽可能的对有效字符进行组合,否则转义字符就会失去作用。所以,对于“1717”和“431”这样的会按照两个来处理,因为他们超过了八进制转义字符的取值范围(-377),所以“1717”会解析成“171”和“7”,“431”解析成“43”和“1”
    2. ++i与i++的区别
      1. 实际上,不管是++i还是i++,都是先将变量的值加1,然后才继续计算的,两者之间真正的区别是:前置++是将变量的值加1后,使用增值后的变量进行运算的,而后置的++是首先将变量赋值给一个临时变量,接下来将变量的值加一,然后使用那个临时变量进行运算。
        其实i=i++;就相当于
                   int temp = i;
                   i += 1;
                   i = temp;
      2. 从指令上来说,后置++在执行增值指令(iinc)前,先将变量的值压入栈,执行增值指令后,使用的是之前的压入栈的值
    3. 相除和余除在Java中的表现

    ---恢复内容结束---

    1. i+++j如何计算
      1. +++的运算
        1. i+++j的结合运算是:(i++)+j。
      2. 贪心规则
        1. 因为编译器极度的“贪心”,所以他会尽可能多的结合有效的符号,而不管结合以后是否会符合符号语法的规则
          1. 例如:a--b,我们是想a减去-b但是由于“--”是有效的符号,所以他们会组合在一起,所以结构就变成了a-- b,这样不符合语法规则,所以会编译错误。
  • 相关阅读:
    教会他人,让其成为你的接棒人
    2015年看的52部电影计划
    我的2015年读书计划,每两周读完一本书!
    拯救你的电脑之文件命名规范与目录规划
    出租WiFi到底靠不靠谱?
    使用观察者模式更新Fragment的内容
    android静默安装和智能安装(转)
    Android拨打电话不弹出系统拨号界面总结
    Android通过AIDL和反射调用系统拨打电话和挂断电话
    Android设为系统默认的短信应用
  • 原文地址:https://www.cnblogs.com/SilentYears/p/10625985.html
Copyright © 2011-2022 走看看