黑马程序员技术交流社区

标题: 数据、数值类型、运算符 [打印本页]

作者: 炫动0337    时间: 2015-7-18 00:45
标题: 数据、数值类型、运算符
1:常量(理解)
        (1)在程序的运行过程中,其值是不可以发生改变的量。
        (2)常量的分类:
                1:字面值常量
                        1:整数常量
                                12,-23
                        2:实数常量
                                12.5,-65.43
                        3:字符常量
                                'a','A','0'
                        4:字符串常量
                                "hello"
                        5:布尔常量
                                true,false
                        6:空常量(后面讲)
                                null
                2:自定义常量(后面讲)
        (3)常量可以直接被输出。

2:进制(理解)
        (1)是一种进位的方式。X进制,表示逢x进1。
        (2)Java中整数常量的表示
                1:二进制 由0,1组成。以0b开头。JDK7以后的新特性。
                2:八进制 由0-7组成。以0开头。
                3:十进制 由0-9组成。默认就是十进制。
                4:十六进制 由0-9,A-F(不区分大小写)组成,以0x开头。
        (3)进制转换:
                1:其他进制到十进制
                        系数:就是每一位上的数据。
                        基数:X进制,基数就是X。
                        权:在右边,从0开始编号,对应位上的编号即为该位的权。
                        结果:把系数*基数的权次幂相加即可。
                       
                        二进制:1011
                                十进制:
                        八进制:74
                                十进制:
                        十六进制:a3
                                十进制:

                2:十进制到其他进制
                        除基取余,直到商为0,余数反转。

                        十进制:60
                        结果:
                                二进制
                                八进制
                                十六进制

                3:快速转换
                        1:8421码。
                        2:二进制--八进制(3位组合)
                        3:二进制--十六进制(4位组合)

3:变量(掌握)
        (1)程序的运行过程中,在指定范围内发生改变的量。
        (2)格式:
                数据类型 变量名 = 初始化值;// 你们的基情在哪里

                变形格式:
                        数据类型 变量名;
                        变量名 = 初始化值;

                举例:
                        方式1:        byte b = 10;

                        方式2:        byte b;
                                b = 10;

4:数据类型(掌握)
        (1)分类
                基本类型:4类8种。
                引用类型:类,接口,数组。(了解)
        (2)基本类型
                整型:
                        byte        1
                        short        2
                        int        4
                        long        8
                浮点型:
                        float        4
                        double        8
                字符型:
                        char        2
                布尔型:               
                        boolean 不明确。可以认为是1个字节。
               
                注意:
                        整数默认是int类型。long类型需要加L或者l后缀。
                        浮点数默认是double类型。float类型需要加F或者f后缀。
        (3)类型转换
                1:boolean类型不参与转换。
                2:隐式转换(从小到大)
                        byte,short,char -- int -- long -- float -- double
                3:强制转换(从大到小)
                        格式:
                                (数据类型)数据;
        (4)面试题
                byte b1 = 3;
                byte b2 = 4;
                byte b3 = b1 + b2;
                byte b4 = 3 + 4;

5:运算符(掌握)
        (1)就是把常量和变量连接的符号,一般参与运算使用。
        (2)分类:
                算术运算符
                赋值运算符
                关系运算符
                逻辑运算符
                位运算符
                三元运算符
        (3)算术运算符
                +,-,*,/,%,++,--

                +:正号,加法,字符串连接符。
                        System.out.println("5+5="+5+5);//5+5=55
                        System.out.println(5+5+"=5+5");//10=5+5

                %:取得余数
                        左边如果大于右边,结果是余数。
                        左边如果小于右边,结果是左边。
                        左边如果等于右边,结果是0。

                        正负号跟左边一致。

                ++/--:
                        ++ 其实相当于把数据+1

                        单独使用:
                                在数据的前后,结果一致。
               
                        参与操作使用:
                                如果在数据的后边,数据先操作,在++/--
                                如果在数据的前边,数据先++/--,在操作。
        (4)赋值运算符
                =,+=,-=,*=,/=,%=

                int a = 10;
                        把10赋值给int类型的变量a。

                a += 20;
                        把左边和右边的和赋值给左边。

                注意事项:
                        a = a + 20;
                        a += 20;
                        结果是等价的,理解不是等价的。

                        因为+=这种运算符,内含了强制类型转换功能。
                        比如:
                                short s = 2;

                                s+=3;
                                等价于
                                s = (short)(s+3)
        (5)关系运算符
                ==,!=,>,>=,<,<=

                特点:关系运算符的结果都是boolean类型。
                      请千万注意:== 不要写成 =
        (6)逻辑运算符
                &,|,!,^,&&,||
               
                &:有false则false
                |:有true则true
                !:true变false,false变true
                ^:相同false,不同true

                &&:有false则false
                ||:有true则true

                &&和&的区别是:如果左边有false了,右边将不再执行。
                ||和|的区别是:如果左边有true了,右边将不再执行。

                开发中常用:
                        &&,||,!(s+3);




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