zoukankan      html  css  js  c++  java
  • 【Java编程思想】三、操作符

    Thinking in Java


    在最底层,Java中的数据是通过使用操作符来操作的。
    因为我之前已经掌握了C和C++,所以这一章也没太多要看的。
    主要是了解Java与C++之间的差异。
    如:

      • String类:支持“+”和“+=”操作
      • “+”操作符:“+”在System.out.println();语句中,意味着“字符串连接”,并尝试将紧跟着的非String类型转换为String类型。如:print( ""+i)会把i转换成字符串类型;
      • 别名现象:执行a=b;后在执行a=c;并不会对b造成任何影响,这是理所当然的。但是,当将一个对象赋值给另一个对象时,实际上是将“引用”从一个地方复制到另一个地方。这意味着这两个引用都指向同一个对象。这种“别名现象”,如果想避免这种现象,可以这样赋值t1.value = t2.value;这样就会覆盖对象了。
      • 测试对象的等价性:注意“==”和equals()的使用
      • 逻辑运算符:“&&”、“||”、“!”操作只可应用与布尔值(这一点与C++不同)
      • “短路效应”:如if(t1 && t2),程序将先判断t1的布尔值,如果t1为false,则直接不执行t2。
      • 直接常量:整数默认为ing类型,浮点数默认为double,可添加后缀改变其类型。
      • 按位操作符:“&”、“|”、“~”、“^”这些跟C语言类似,没有变化。
      • 移位操作符:“<<”左移(低位补0);“>>”右移(正数补0,负数补1);“>>>”无符号右移(无论正负,都在高位补0);如果对char/byte/short类型的数值进行移位处理,那么在移位之前,他们会被转换成int类型;并且得到的结果也是int类型;
      • 类型转换操作符:在Java中,对于“扩展转换”,不必显示的进行类型转换;而执行窄化转换时的操作会面临信息丢失的危险,此时,编译器会强制的要求我们 进行类型转换,否则编译不会通过;
        • 截尾和四舍五入
        • 类型提升
        • Java没有sizeof

  • 相关阅读:
    sql 行转列
    wm_concat函数 用法
    PL/SQL如何调试Oracle存储过程
    Oracle&SQLServer中实现跨库查询
    Oracle 中 decode 函数用法
    Oracle中给用户赋予debug权限
    Oracle中的NVL函数
    oracle 触发器 pragma autonomous_transaction
    ORACLE中%TYPE和%ROWTYPE的使用
    A complete example using RAISE_APPLICATION_ERROR : raise_application_error
  • 原文地址:https://www.cnblogs.com/JackOwen/p/3911974.html
Copyright © 2011-2022 走看看