zoukankan      html  css  js  c++  java
  • Java 笔记

    运算符优先级

    a+=b+=c;
    // 等价于
    a+=(b+=c);
    

    ||、&& 与 |、&

    短路求值:第一个操作数已经能够确定表达式的值,则不用计算第二个操作数的值。

    ||、&&使用短路求值法。

    满足短路的条件:

    exp1 && exp2 // 当exp1为假时
    exp1 || exp2 // 当exp1为真时
    

    |、& 不使用短路的方式来求值,即两个操作数都会计算

    Java 存储区

    • 栈:基本数据类型的数据以及对象的引用,对象本身不在栈中,而在堆中(使用 new 创建的对象)或者常量池中
    • 堆:存放所有使用 new 创建的对象
    • 寄存器:最快的存储区,在程序中无法直接控制。

    String 的不可变性

    • exp 1

        String s1 = "jaywhen";
        s1 = "code";
        System.out.println(s1); // code
      

      看似 s1 的值改变了,然而事实却是:
      string1

      也就是说,s1 所引用的对象并没有改变,只是 s1 引用了一个新的对象。

    • exp 2

      String s1 = "jaywhen";
      String s2 = s1;
      System.out.println(s1 == s2); // true
      s2 = "code";
      System.out.println(s1 == s2); // false
      System.out.println("s1 is " + s1 + " s2 is " + s2); // s1 is jaywhen s2 is code
      

    string2

  • 相关阅读:
    【JAVA与C#比较】其它
    C#和java之间的一些差异与共性
    C#与Java的语法差异
    关于npm本地安装模块包(node_modules),安装不了的问题
    vue
    vue
    vue
    vue
    v
    vue -model
  • 原文地址:https://www.cnblogs.com/Jaywhen-xiang/p/14264906.html
Copyright © 2011-2022 走看看