zoukankan      html  css  js  c++  java
  • Java学习之旅第4天

    运算符

    二元运算符

     package operator;
     //二元运算符
     public class Demo01 {
         public static void main(String[] args) {
             //ctrl+d 复制当前行到下一行
             int a=10;
             int b=20;
             int c=30;
             int d=40;
             System.out.println(a+b);
             System.out.println(a-b);
             System.out.println(a*b);
             System.out.println(a/b);//0 int型取整数部分0 应转换int为double
             System.out.println(a/(double)b);//0.5
             System.out.println("==========================================");
             byte e=8;
             short f=10;
             int g=123;
             long h=1234567890;
             System.out.println(e+f);//自动升型到int
             System.out.println(f+g);//自动升型到int
             System.out.println(g+h);//自动升型到long
             System.out.println("==========================================");
     
     
        }
     }

    关系运算符

     package operator;
     //关系运算符
     public class Demo02 {
     
         public static void main(String[] args) {
             //关系运算符返回结果是布尔值 true false
             int a=1;
             int b=2;
             System.out.println(a>b);
             System.out.println(a<b);
             System.out.println(a==b);
             System.out.println(a!=b);
     
        }
     
     }

    取余

     package operator;
     //取余
     public class Demo03 {
         public static void main(String[] args) {
             int a=10;
             int b=21;
             System.out.println(b%a);
        }
     }

    医院运算

     package operator;
     //一元运算符
     public class Demo04 {
         public static void main(String[] args) {
             int a=1;
             System.out.println(a);//1
             int b=a++;//执行这行代码后 先给b赋值 a再自增
             System.out.println(a);//2
             System.out.println(b);//1
             int c=++a;//执行这行代码前 a先自增 再给c赋值
             System.out.println(a);//3
             System.out.println(b);//1
             System.out.println(c);//3
             System.out.println("===============================");
             //幂运算 2^3
             double pow = Math.pow(2, 3);
             System.out.println(pow);
        }
     }

    逻辑运算

     package operator;
     //逻辑运算符
     public class Demo05 {
     
         public static void main(String[] args) {
             //&&且 ||并 !非
             boolean a=true;
             boolean b=false;
             System.out.println(a&&b);//false a真 b假 a且b为假
             System.out.println(a||b);//true a真 b假 a并b为真
             System.out.println(!(a&&b));//true 取反 ()内为真则返回结果为假
             System.out.println(!(a||b));//false
     //短路运算
             int c=10;
             boolean d=(c>10)&&(c++>10);
             System.out.println(c);//c++未运算返回结果为10
             System.out.println(d);//false &&运算下 c>10为false则后面c++>10不进行运算
        }
     
     }

    位运算

     package operator;
     //位运算
     public class Demo06 {
         public static void main(String[] args) {
             /*
             A=0011 1100
             B=0011 1101
             A&B=0011 1101 对应位均为1则为1 否则就是0
             A|B=0011 1101 对应位均为0则为0 否则就是1
             A^B=0000 0001 对应位相同则为0 否则为1
             ~B=1100 0010 取反
              */
             //2*8=16 怎么运算最快
             //<< 代表*2
             //>> 代表/2
             /*
             0000 0000 0
             0000 0001 1
             0000 0010 2
             0000 0011 3
             0000 0100 4
             0000 1000 8
             0001 0000 16
              */
             System.out.println(2<<3);
     
        }
     }

    拓展复制运算符

     package operator;
     //拓展赋值运算符
     public class Demo07 {
         public static void main(String[] args) {
     
             int a=1;
             int b=2;
             a+=b;
             System.out.println(a);//a+=b 表示a=a+b
             a-=b;
             System.out.println(a);//a-=b 表示a=a-b
             System.out.println("==========================================");
     //字符串连接符 +
             System.out.println(""+a+b);//String类型在前面 就会按String类型连接!!!
             System.out.println(a+b+"");
     
        }
     }

    三元运算符

     package operator;
     //三元运算符
     public class Demo08 {
         public static void main(String[] args) {
             //x?y:z 表示如果x为true返回结果为y否则为z
             int age=22;
            String type=age>=18?"成年":"未成年";//!!!
             System.out.println(type);
        }
     }

    运算符优先级

     package operator;
     //运算符优先级
     public class Demo09 {
         public static void main(String[] args) {
             int a=10;
             int b=20;
             int c=30;
             int d=21;
     
             System.out.println(a+b*c);//乘除法优先与加减法
             System.out.println(a+b/a);//乘除法优先与加减法
             System.out.println((a+b)*c);//()内优先计算
             System.out.println(a-d%b);//%优先于-
             System.out.println(b+d%b);//%优先于+
             System.out.println(a*d%b);//从左往右
             System.out.println(d%b*a);//从左往右
     
        }
     }
     

     

     

     

  • 相关阅读:
    数据类型装换
    变量及数据类型
    27 网络通信协议 udp tcp
    26 socket简单操作
    26 socket简单操作
    14 内置函数 递归 二分法查找
    15 装饰器 开闭原则 代参装饰器 多个装饰器同一函数应用
    12 生成器和生成器函数以及各种推导式
    13 内置函数 匿名函数 eval,exec,compile
    10 函数进阶 动态传参 作用域和名称空间 函数的嵌套 全局变量
  • 原文地址:https://www.cnblogs.com/linsip/p/13270099.html
Copyright © 2011-2022 走看看