一天任务完成

运算符

优先级()内最先运算

1 算术运算符:+,-,*,/,%(取余,也叫模运算),++(自增),--(自减)

2.赋值运算符 =

3.关系运算符 > , < ,>= , <= , == (等于), !=(不等于) , instanceof

4 逻辑运算符 &&(与) , || (或),!(非,非你即我)

以上重点掌握

5 位运算符 &(与),|(或),^(异或),~(非) ,>>(右移) , << (左移), >>>, (了解就可!)

6 条件运算符 ? : 这种

7 扩展赋值运算符 += , -= ,*= , /=

public class Demo01 {
    public static void main(String[] args) {
        //二元运算符
        // 快捷键 ctrl+d 复制当前行到下一行
        int a =10;
        int b =20;
        int c =25;
        int d =25;
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/b);//结果为0.5,但int为整数类型,所以取靠0,输出为0
        //所以正确应该强转一下
        System.out.println(a/(double)b);//输出0.5
        

    }
}
public class Demo02 {
    public static void main(String[] args) {
        long a =131316464L;
        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);//输出为int类型,因为自动往高位int转。
        //即int以上类型运算,输出为最高的那个类型;int及int一下类型运算,输出只为int类型,不存在输出short,byte类型
    }
}
public class Demo03 {
    public static void main(String[] args) {
        // 关系运算符返回的结果:正确、错误;即boolean来表示
        int a=10;
        int b=20;
        int c=11;
        System.out.println(a>b);//false
        System.out.println(a<b); //true
        System.out.println(a==b);//false
        System.out.println(a>=b);//false
        System.out.println(a<=b);//true
        System.out.println(a!=b);//true
        System.out.println(c%a);//输出取余为1,模运算
    }
}

++;--的运算

public class Demo04 {
    public static void main(String[] args) {
        // ++自增, --自减,因为需要一个数就可,即一元运算符
        int a = 10;
        int b = a++;//++放后边意思是执行完这行代码后,先给b赋值,a再自增,,故a为10时已经赋值给b,b输出为10
        // a++意思就是a+1;相当于省略了a=a+1一行代码
        System.out.println(a);//输出结果为11
        int c = ++a;//++放前边意思是执行完这行代码后,a先自增,再给c赋值
        //即a自增了两次,赋值给c,所以输出a为12,c为12
        System.out.println(a);//输出结果为12
        System.out.println(b);//输出结果为10
        System.out.println(c);//输出结果为12
        //总结:a++,先把a赋值,后再对a进行运算+1;++a是先让a运算+1.后再赋值给其他
        //a--;--a同++
        int d = 10;
        int e =d--;
        int f =--d;
        System.out.println(d);//输出为8
        System.out.println(e);//输出为10
        System.out.println(f);//输出为8

        //数学中幂运算 ,在java中2^3这样表示2的三次方是不对的,用math数学工具中的pow,向下边表示2的3次方
        double pow = Math.pow(2, 3);
        //看源码:ctrl+鼠标左键
        //在码完Math.pow(2, 3)后可alt+enter直接出现double pow
        System.out.println(pow);//输出8.0
    }
}

逻辑运算

public class Demo05 {
    //逻辑运算符
    public static void main(String[] args) {
        //与(and),或(or);非(取反)
        boolean a = true;
        boolean b = false;
        System.out.println("a&&b:"+(a&&b));//输出a&&b:false;逻辑与运算:两个变量都为真,结果才为true,即一假全假,全真才真
        System.out.println("a||b:"+(a||b));//输出a||b:true;逻辑或运算:两个变量都为假,结果才为false,即一真全真,全假才假
        System.out.println("!(a&&b):"+!(a&&b));//输出!(a&&b):true;逻辑非运算:结果取反,是真则变成假,是假则变成真

        //短路运算
        System.out.println("a&&b:"+(b&&a));//如此,因为b为false,所以一假全假,就已经输出了,后边的b&&a不再运算
        //短路运算验证
        int c =5;
        boolean d = (c<4)&&(c++<4);
        System.out.println(d);//输出false
        System.out.println(c);//输出c=5
        //可知c++没有运算,如果&&及后边进行运算,则c=6
    }
}

位运算

public class Demo06 {
    public static void main(String[] args) {
        //位运算
        /*
        A = 0011  1100
        B = 0000  1101
        --------------------------------------------------------------------
        A&B=0000  1100  位与运算:即A的二进制代码与B都为1时,结果得1,其他都得0
        A/B=0011  1101  位或运算:A与B都为0时才为0,有一个1结果就为1
        A^B=0011  0001   位异或运算,A与B的代码相同取0,不同取1
        ~A =1100  0011   位取反运算,是0就取1,是1就取0
        实际跟逻辑运算符一样的逻辑思路

        2*8最快的运算是2*2*2*2  因为是位运算,直接跟底层打交道,效率高
        <<(左移)相当于*2; >>(右移)相当于/2      位运算
        0000 0000   =0
        0000 0001   =1
        0000 0010   =2
        0000 0011   =3
        0000 0100   =4
        可看出 0000 1000  =8;0001 0000 =16
        如(2<<3)代表2左移3位
        即变成  0001 0000即=16
         */
        System.out.println(2<<3);//输出16
        //因此<<左移就相当于*2;>>右移就相当于/2
    }
}

扩展赋值运算符

public class Demo07 {
    public static void main(String[] args) {
        // 扩展赋值运算符
        int a =10;
        int b =20;
        int c =10;
        a += b;//即a=a+b的意思
        c-=b;//即c=c-b的意思
        System.out.println(a);//输出30
        System.out.println(c);//输出-20

        //字符串连接符    +  , String
        System.out.println(a+b);//结果50 是a=a+b后的a再加b
        System.out.println(""+a+b);//输出3020,""是字符串的意思,字符串加东西,后边会自动转换为字符串形式
        System.out.println(a+b+"");//输出50,这样是先运算,后成为字符串形式
    }
}

条件运算符:三元运算符

public class Demo08 {
    public static void main(String[] args) {
        //三元运算符
        // x  ?  y  :  z
        // 即如果x==true,则结果为y,否则结果为z
       int score = 80;
       String type = score<60 ?"不及格" : "及格";//必须掌握
        int  转码  = 30_0000;
        String  type2 = 转码<20_0000?"回家种地":"人上人";
        System.out.println(type);// 输出及格
        System.out.println(type2);// 输出人上人
    }
}

包机制

实质相当于文件夹

一般利用公司域名倒置作为包名,如 com.baidu.www,又如下图包后,最上边都有idea自动加的包和包路径

![](C:\Users\有所为\Desktop\Mark Down 学习\包机制.png)

包语句的语法格式为:package pkg[. pkg2[.pkg3...]];

为了能够使用某一包的成员,我们需要在java程序中明确导入该包,使用”import“语句可完成此功能

import package1 [.package2...].(classname|*);

package com.lihao.operator;

import java.util.Date;

public class Demo08 {
    public static void main(String[] args) {
        Date //如果直接输入Date则会显错,按住alt+shift+enter 直接就导入包了,且import必须在package下
        // 导入尽量不要让两个包里边的名字重复
    }
}

import com.lihao.base.*;  //.*是通配符的意思,即base包里的Demo01到Demo06全部导入进去,不用再一个一个导入

阿里巴巴开发手册 去看,以达到开发的规范

java Dos 生成文档

能自动注释的东西

参数信息:@auther 作者名

@veision 版本号

@since 指明需要最早使用的jdk版本

@param 参数名

@return 返回值情况

@throws 异常抛出情况

package com.lihao.base;

/**
 * @author li
 * @version 1.0(版本)
 * @since 1.8(开发版本?)
 */
public class Doc {
    String name;//属性

    /**
     * @param name   //param 指参数
     * @return
     */
    public  String test(String name){  //方法
        return  name;
        //加在类上边就是类的注释,加在方法上边就是方法是注释
        //创建Doc的两种方法
        /*第一种
        形式:javadoc  参数  java文件
        找到所在的文件地址,打开cmd输入javadoc -encoding UTF-8  -charset UTF-8 Doc.java
        即可生成Doc文档
         */
        /*第二种
        java中找到tool工具
        找到tool工具中的generate javaDoc
        打开后在文件地址处找到文件地址
        在locale处配置语言 zh_CN
        在other command line arguments 处输入编码集-encoding UTF-8 -charset UTF-8 ,更好的把文件内的中文识别
        即可生成Doc文档
         */
    }
}

一天任务完成

上一篇:maven 打依赖包命令


下一篇:[Vue深入组件]:v-model语法糖与自定义v-model