• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

加班费的离开

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

JAVA的运算符 w-wwftnanke-com

 Java的大多数运算符在形式上和功能上都与C和C++的运算符非常类似,熟悉C和C++的读者对此不会感到陌生。
    1.算术运算符
    算术运算符包括通常的加(+)、减(一)、乘(*)、除(/)、取模(%),完成整型或浮点型数据的算术运算。许多语言中的取模运算只能用于整型数,Java对此有所扩展,它允许对浮点数进行取模操作。此外,算术运算符还有“++”、“一一”两种,分别表示加1和减1操作。与C++类似,“++i”和“i++”的执行顺序稍有不同,前者在i使用之前加1,后者先使用再加1。“--i”与“i--”的情况与此类似。
    2.关系运算符
    关系运算符用来比较两个值,包括大于(>)、大于等于(>=)、小于(<)、小于等于    (<=)、等于(==)、不等于(!=::)6种。关系运算符都是二元运算符,运算的结果是一个
    逻辑值。  
    Java允许=一和!一两种运算用于任何数据类型。例如,可以判定两个实例是否相等。
    3.逻辑运算符
    逻辑运算符包撬逻辑与(&&)、逻辑或(||)和逻辑非(!)。前两个是二元运算符,后一个是一元运算符。
    Java对逻辑与和逻辑或提供短路操作功能。进行运算时,先计算运算符左侧表达式的值,如果使用该值能得到整个表达式的值,则跳过运算符右侧表达式的计算,否则计算运算符右侧表达式,并得到整个表达式的值。
    例3-3
    String unset=null l
    if((unset!=null)&&(unset.1ength()>5))(
    //对unset进行某种操作
    }
    空串unset不能使用,因此不能访问unset.1ength(),但该if()语句中的逻辑表达式是合法的·且完全安全。这是因为第一个子表达式(unset!=nulI)结果为假,它马上导致整个表达式的结果为假。所以&%运算符跳过不必要的(unset.1ength()>5)计算,因为没有计算它,避免了空指针异常。
    4.位运算符
    位运算符用来对二进制位进行操作,包括按位取反(~)、按位与(&)、按位或(I)、异或(‘)、右移(》)、左移(《)及无符号右移(>》)。位运算符只能对整型和字符型数据进行操作。
    Java提供两种右移运算符。
    熟悉的运算符“>>”执行算术右移,它使用最高位填充左侧的空位。右移的结果为:每移一位,第一个操作数被2除一次,移动的次数由第二个操作数确定。

    算术右移不改变原数的符号,而逻辑右移不能保证这一点。
    移位运算符约简其右侧的操作数,当左侧操作数是int类型时,右侧以32取模;当左侧是long类型时,右侧以64取模。所以,执行
    int x;
    x>≥>32;后,x的结果不改变,而不是通常期望的0。这样可以保证不会将左侧操作数完全移走

posted on 2012-08-16 10:27  加班费的离开  阅读(191)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3