黑马学习笔记_java基础知识总结

  ——- android培训、java培训、期待与您交流! ———-

逻辑运算符

&(并且) , |(或者) , !(非) , ^(异或) , &&(短路与) , ||(短路或)

注意事项:
    a:逻辑运算符一般用于连接boolean类型的表达式或者值。
        在Java中我们要表示一个数大于3并且小于6 ,
        不可以写成33 & x<6 。
    b:表达式:就是用运算符把常量或者变量连接起
             来的符合java语法的式子。
        算术表达式:a + b
        关系表达式:a == b

&逻辑与:有false则false。
|逻辑或:有true则true。
^逻辑异或:相同为false,不同为true。
!逻辑非:非false则true,非true则false。
        特点:偶数个不改变本身。

位运算符

&(与),|(或),^(异或) , ~(按位取反) , <<(左移) ,>>(右移) ,>>>(无符号右移)

&:有0则0
|:有1则1
^:相同则0,不同则1
~:按位取反

三元运算符

三元(三目)运算符的格式
    (关系表达式) ? 表达式1 : 表达式2;
B:三元运算符的执行流程
    计算关系表达式的值,如果为true, 运算后的结果是表达式1; 
                     如果为false,运算后的结果是表达式2;

流程控制语句的分类

    顺序结构
    选择结构
    循环结构

选择结构

if语句的三中格式
格式1
if(比较表达式) {
        语句体;
    }

格式2 
if(比较表达式) {
        语句体1;
    }else {
        语句体2;
    }

格式3
if(比较表达式1) {
        语句体1;
    }else if(比较表达式2) {
        语句体2;
    }else if(比较表达式3) {
        语句体3;
    }
    ...
    else {
        语句体n+1;
    }

    switch语句的格式
    switch(表达式){
        case 值1:
            语句体1;
            break;
        case 值2:
            语句体2;
            break;
        case 值3:
            语句体3;
            break;
        ....
        default:    
            语句体n+1;
            break;
    }
    switch注意事项:
    (1):switch表示这是switch语句
        表达式的取值:byte,short,int,char
        JDK5以后可以是枚举(什么是枚举,以后再讲)
        JDK7以后可以是String
    (2):case后面跟的是要和表达式进行比较的值
    (3):语句体部分可以是一条或多条语句
    (4):break表示中断,结束的意思,可以结束switch语句
    (5):default语句表示所有情况都不匹配的时候,
        就执行该处的内容,和if语句的else相似

循环结构

for(初始化表达式语句;判断条件语句;控制条件语句) {
        循环体语句;
    }

    a:执行初始化表达式语句
    b:执行判断条件语句,看其返回值是true还是false
        如果是true,就继续执行
        如果是false,就结束循环
    c:执行循环体语句;
    d:执行控制条件语句
    e:回到B继续。

循环结构while语句的格式:
    while循环的基本格式:
        while(判断条件语句) {
            循环体语句;
        }
    完整格式:
        初始化条件语句;
        while(判断条件语句) {
             循环体语句;
             控制条件语句;
        }

    a:执行初始化条件语句;
    b:执行判断条件语句,看其返回值是true还是false
        如果是true,就继续执行
        如果是false,就结束循环
    c:执行循环体语句;
    d:执行控制条件语句
    e:回到b继续。

循环结构do...while语句的格式:
    do {
        循环体语句;
    }while(判断条件语句);

    完整格式;
        初始化条件语句;
        do {
            循环体语句;
            控制条件语句;
        }while(判断条件语句);
    a:执行初始化条件语句;
    b:执行循环体语句;
    c:执行控制条件语句;
    d:执行判断条件语句,看其返回值是true还是false
        如果是true,就继续执行
        如果是false,就结束循环
    e:回到b继续。

一维数组

    格式1: 数据类型[] 数组名;
    int[] a;    定义了一个int类型的数组a;

    格式2: 数据类型   数组名[];
    int a[];    定义了一个int类型的a数组;

        a: 每一个new出来的东西都会为其分配一个地制值。
        b: 每一个变量都有一个默认的值
            byte,short,int,long  -- 0
            float,double           -- 0.0
            char                   -- '\u0000'
            boolean                    -- false
            引用数据类型         -- null      
        c: 使用完毕就变成了垃圾,等待垃圾回收器对其回收

静态初始化的格式
数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…};
        举例: int[] arr = new int[]{1,2,3};
简化格式:
        数据类型[] 数组名 = {元素1,元素2,…};
        举例: int[] arr = {1,2,3};

二维数组

二维数组格式1

    数据类型[][] 变量名 = new 数据类型[m][n];
    int[][] arr = new int[3][2];
    以下格式也可以表示二维数组
        a:数据类型 数组名[][] = new 数据类型[m][n];
        b:数据类型[] 数组名[] = new 数据类型[m][n];

二维数组格式2

    数据类型[][] 变量名 = new 数据类型[m][];
        m表示这个二维数组有多少个一维数组
        这一次没有直接给出一维数组的元素个数,可以动态的给出。
    举例:
        int[][] arr = new int[3][];
        arr[0] = new int[2];
        arr[1] = new int[3];
        arr[2] = new int[1];
二维数组格式3
    数据类型[][] 变量名 = new 数据类型[][]{{元素…},{元素…},{元素…}...};
    简化版:
        数据类型[][] 变量名 = {{元素…},{元素…},{元素…}};
    这个格式属于静态初始化:由我们指定具体的元素值,由系统给分配长度
        举例: 
            int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};
            int[][] arr = {{1,2,3},{5,6},{7}};

最后的总结:
java基础知识点较多,要经常练习,才能灵活运用。

你可能感兴趣的:(黑马学习笔记)