zoukankan      html  css  js  c++  java
  • Java语言基础-运算符

    一丶逻辑运算符

      1.&和&&的区别

        (1).两个逻辑运算符的结果是一样的

        (2).当第一个表达式为false时,&是会判断后边的表达式,而&&会产生短路,所以不会判断以后的表达式

      2. | 和 || 的区别

        (1).两个逻辑运算符得到的最终结果是一样的

        (2).当第一个表达式为true时, | 是会判断后边的表达式,而 || 会产生短路,故不会判断以后的表达式

      注:一般情况下都用&&和 || .并且 &和 | 可以参入位运算

    二丶位运算符

      

     

      1.&运算 请看下图(把十进制的数转换为2进制,然后两个两个比较,必须两个数都为1得到的二进制数才是1,否则是0)

        

      2. |运算 请看下图(把十进制的数转换为2进制,然后两个两个比较,两个数其中有一个为1得到的就是1,其他为0)

        

      3. ^运算(把十进制的数转换为2进制,然后两个两个比较,两个数相同就是0,不相同就是1)

        

        (1). ^运算有一个特点,一个数异或同一个数两次,结果还是这个数

      4. ~ 反码 (就是二进制运算中的取反操作).

      5.<< 相当于乘以2的倍数.

      6.>>相当于除以2的倍数.

      移动n位,就是对乘以或者除以2的n次幂.  具体请看下图

        

      7.>>>:无符号右移:更右移的区别就是,数据进行右移时,高位出现的空位,无论原高位是什么,空位都用0补。

    三丶三元运算符

      1.格式

        (1) (条件表达式)?表达式1:表达式2;

        (2) 如果条件为true,运算后的结果是表达式1;

        (3) 如果条件为false,运算后的结果是表达式2;

      2.实例

        (1) 获去两个数中最大数.

        (2) int x=3,y=4,z;

        (3) z=(x>y)?x:y; //变量存储的就是两个数的最大数

        

  • 相关阅读:
    [daily][archlinux][shell][fish] 使用最炫酷的shell工具fish
    [daily][btrfs][mlocate][updatedb] mlocate不认识btrfs里面的文件
    [daily][archlinux] TODO LIST
    [math][mathematica] mathematica入门
    [math][mathematica] archlinux 下 mathematica 的安装 (科学计算软件 mathematica/matlab/sagemath)
    [daily][centos][sudo] sudo 报错
    [development][C][thread_local] 线程全局变量
    [development][C] C语言标准
    [daily][centos][nginx] 在centos7使用nginx启用对文件目录的http访问
    CS RANK: AI & ML
  • 原文地址:https://www.cnblogs.com/Chestnuts/p/7504052.html
Copyright © 2011-2022 走看看