zoukankan      html  css  js  c++  java
  • JAVA的学习日记5

    java类型转换复习

    
    package operator;
    
    public class Demo02 {
        public static void main(String[] args) {
            //强类型转换
            long a = 2121231231321L;
            int b = 123;
            short c = 10;
            byte d = 8;
    
            System.out.println(a+b+c+d);    //long
            System.out.println(b+c+d);    //int
            System.out.println(c+d);    //short
        }
    }
    
    

    运算符

    关系运算符

    
    package operator;
    
    public class Demo03 {
        public static void main(String[] args) {
            //关系运算符返回的结果:正确、错误  布尔值类型
            int a = 10;
            int b = 20;
            int c = 32;
    
            System.out.println(a>b);    //false
            System.out.println(a<b);    //true
            System.out.println(a==b);   //false
            System.out.println(a!=b);   //true
            //除法【取整数部分】
            System.out.println(c/a);   //3
            //取余【取小数部分】
            System.out.println(c%a);   //2
        }
    }
    
    

    一元运算符和Math类

    
    package operator;
    
    public class Demo04 {
        public static void main(String[] args) {
            // ++、--    自增、自减运算符,也叫作一元运算符
            int a = 3;
    
    
            int b = a ++;   //a ++表示意思为a = a + 1;
            int c = ++ a;   //++ a 表示为a = a + 1;
            /*a ++ 和++ a 的区别:
             *   a ++ 表示先把a的值赋值为等号前的数,如上面的b,然后再执行a = a + 1的操作,最后结果为:
             *   b是a++之前的值,而a是a++之后的值,Eg:此时的b值为3,a值为4
             *   ++ a 表示先执行a = a + 1的操作,再把a的值赋值为等号前的数,如上面的c,最后结果为:
             *   c是++a之后的值,而a是++a之后的值,Eg:此时的c值为5,a值为5*/
            System.out.println(a);      //5
            System.out.println(b);      //3
            System.out.println(c);      //5
    
    
            //Math类
            //Math.pow中的pow表示幂运算,Eg:2^3 = 2*2*2 = 8
            double pow = Math.pow(2,3);
            System.out.println(pow);    //8
        }
    }
    
    

    特别说明:
    instanceof 是 Java 的一个二元操作符,类似于 ==,>,< 等操作符。
    instanceof 是 Java 的保留关键字。它的作用是测试它左边的对象是否是它右边的类的实例,返回 boolean 的数据类型。
    这个要等到面向对象的时候在说明了

    逻辑运算符

    package operator;
    
    public class Demo05 {
        public static void main(String[] args) {
            //逻辑运算符
            //与(and)    或(or)   非(取反)
            boolean a = true;
            boolean b = false;
            System.out.println("a&&b:"+(a&&b));         //false     逻辑与运算,两个变量都为真,结果才为真
            System.out.println("a||b:"+(a||b));         //true      逻辑或运算,任意一个变量都为真,结果就为真
            System.out.println("!(a&&b):"+(!(a&&b)));   //true      如果是真,则结果为假,如果为假,则结果为真
    
            //短路运算
            int c = 5;
            boolean d = (c < 4) && (c++ < 4);
            System.out.println(d);      //false
            System.out.println(c);      //5
    
        }
    }
    
    

    位运算符

    package operator;
    
    public class Demo06 {
        public static void main(String[] args) {
            //位运算 &,|,^,~,>>,<<,>>>(了解)
            /*
            A = 0011 1100
            B = 0000 1101
            * A&B = 0000 1100
            * A|B = 0011 1101
            * A^B = 0011 0001
            * ~B = 1111  0010
    
            2*8 = 16  = 2*2*2*2
            位运算就是在二进制的基础上进行的,效率极高
            0000 0001   1
            0000 0010   2
            0000 0011   3
            0000 0100   4
            0000 1000   8
            0001 0000   16
    
            * */
            System.out.println(2<<3);       //16
        }
    }
    
    

    拓展赋值运算符

    package operator;
    
    public class Demo07 {
        public static void main(String[] args) {
    
            //拓展赋值运算符 += -= *= /=
            int a = 10;
            int b = 20;
            int c = a += b;
            int d = a -= b;
            int e = a *= b;
            int f = a /= b;
    
            System.out.println(c);  //30
            System.out.println(d);  //10
            System.out.println(e);  //200
            System.out.println(f);  //10
    
            //字符串连接符 +
            System.out.println(a+b);    //30    表示为运算
            System.out.println(""+a+b); //1020  表示为拼接
        }
    }
    
    

    条件运算符【三元运算符】

    package operator;
    
    public class Demo08 {
        public static void main(String[] args) {
    
            //条件运算符 ?:  又称为三元运算符
            //x ? y : z
            //表示为如果x为true,则结果为y,否则结果为z
    
            int score = 80;
            String type = score < 60 ? "不及格" : "及格";
            System.out.println(type);   //及格
        }
    }
    
    

    Java中运算符优先级

  • 相关阅读:
    Windows如何快速远程到另一台Windows并管理多个远程服务器
    基于视觉反馈的步进电机X-Y平台控制
    相机位姿估计3:根据两幅图像的位姿估计结果求某点的世界坐标
    相机位姿估计2:[应用]实时位姿估计与三维重建相机姿态
    相机位姿估计1_1:OpenCV:solvePnP二次封装与性能测试
    求空间内两条直线的最近距离以及最近点的坐标(C++)
    相机位姿估计1:根据四个特征点估计相机姿态
    相机位姿估计0:基本原理之如何解PNP问题
    记2016年中国移动广西公司面试(计算机类)
    子坐标系C在父坐标系W中的旋转问题
  • 原文地址:https://www.cnblogs.com/cdoudou/p/13636018.html
Copyright © 2011-2022 走看看