黑马程序员技术交流社区

标题: java基础day02 [打印本页]

作者: 18201432758    时间: 2015-9-14 21:48
标题: java基础day02
一、常量【掌握】
        1、概念
                在程序的运行过程中,其值不可以发生改变的量
        2、分类
                (1)字面值常量
                        A:整数                34,-23
                        B:小数                32.5   -12.655
                        C:字符                'a'  'B'   '6'  ' '
                        D:字符串        "abdvcdlfdj"
                        E:布尔常量        只有true 和 false
                        F:空常量        null
                (2)自定义常量

----------------------------------------------------------------------------

二、进制
        1、概念
                一种进位方法,x进制,逢x进一
        2、进制的表现形式【掌握】
                二进制                以0b开头
                八进制                以0开头
                十六进制        以0x开头     0-9, A-F(a-f)组成
                十进制                默认就是十进制
        3、进制转换
                (1)任意进制---->十进制
                        公式:系数 * 基数的权次幂相加

                        系数:这个数据上的每一位数据
                        基数:几进制, 基数就是几
                        权:从右开始数,以0开始编号,每一位数据对应的编号就是该位的权

                        eg: 八进制数074转十进制
                         7*8^1 + 4*8^0 = 56 + 4 = 60;
                (2)十进制 ----> 任意进制
                        公式:除基倒取余

                        eg: 84 --- 八进制
                        84/8 = 10 .... 4
                        10/8 = 1  .... 2
                        1/8  = 0  .... 1
                (3)8421码
                        1   1   1   1   1   1   1   1
                        128 64  32  16  8   4   2   1
                        eg: 01101100

        4、原反补码
                计算机做运算时,是以补码进行运算的。
                正数:原反补码一样
                负数:
                        原码:最高位符号位1,其余是数值位
                        反码:符号位不变,其余数值位逐位取反
                        补码:反码+1

----------------------------------------------------------------------------

三、变量【掌握】
        1、概念
                在程序运行过程中,其值可以在指定范围内发生改变的量
        2、格式
                数据类型 变量名 = 变量值;

                数据类型 变量名;
                变量名 = 变量值;

                eg: int i = 10;
               
                int i;
                i = 10;

----------------------------------------------------------------------------

四、数据类型【掌握】
        1、分类
                基本数据类型(4类8种)
                引用数据类型(类、接口、数组)
        2、基本数据类型分类
                A:整数型
                        byte        1    -128~127
                        short        2
                        int        4
                        long        8
                B:小数
                        float        4
                        double        8
                C:字符
                        char        2   0 ~ 65535
                D:布尔类型
                        boolean (不明确)
               
        3、默认数据类型
                A:整数:默认是int,long类型变量定义需要加L;
                B:小数:默认是double,float类型变量定义需要加F或f;
       
        4、数据类型转换
                (1)隐式转换(从小到大)
                        byte -- short,char--- int --- long --- float --- double
                (2)强制转换(从大到小)
                        double --- float --- long -- int --- char, short --- byte

                注意:byte、short、char数据做运算的时候,会默认提升为int类型进行运算

        5、面试题
                byte b1 = 3;
                byte b2 = 4;
                byte b3 = b1 + b2;        //a:(b1+b2)结果是int类型;
                                        //b:b1和b2是变量,里面的值编译器不知道,运行的时候才有结果,所以(b1+b2)有可能超出127或者是-128
                byte b4 = 3 + 4;        //常量优化机制:编译的时候,就已经把3+4的结果转换为7了,编译期知道这个7在byte范围以内。

        6、字符和字符串参与运算
                (1)字符
                        '0' + 1    //49
                (2)字符串
                        "hello" + 100                //hello100
                        'Z' + 10 + "world"        //100world

        7、char数据类型
                char c = 100;                //c的值就是d

----------------------------------------------------------------------------

五、运算符
        1、算术运算符
                +  -  *  /   %  ++  --
                /: 10/3 = 3
                %: 取余(有很多细节)
               
            临时变量的问题:
                在进行运算操作的时候,如果++或--在变量的后面,会产生一个临时变量,先把变量的值暂存起来,用于运算操作,然后再自增或自减

            面试题:
                int i = 4;
                int j = (i++) + (++i) + (i*10)                //70

        2、赋值运算符
                =  +=  -=  *=  /=  %=

                +=        //包含了强制转换
                byte b = 3;
                b += 1;                //b = (byte)(b + 1)

        3、关系(比较/条件)运算符
                ==  !=  >  >=  <  <=

                结果只能是boolean类型


----------------------------------------------------------------------------

        (后天学)
        4、逻辑运算符
        5、位运算符
        6、三元运算符
       



作者: ...!!!    时间: 2015-9-14 21:53
不错哦,赞一个
作者: 笑笑精灵    时间: 2015-9-14 21:56
飘过,很好
作者: 0819刘海东    时间: 2015-9-14 23:21
很详细啊,赞一个
作者: 与谁    时间: 2015-9-14 23:43
哈哈,原来笔记还可以这么玩{:2_30:},666666




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2