黑马程序员  第二天笔记 

            <a href="http://www.itheima.com" target="blank">java培训</a>

  1.  关键字

            A.Java中被赋予特殊意义的单词:每一个关键字都有其特定的含义,是java规定好的

           B.全部由小写字母组成

            

2.标识符

      A.在java中自己定义的内容 ,称为标识符

      B. 标识符的命名规则:

         1)  标识符由数字0-9,字母a-z,A-Z,下划线_,美元符号$组成

         2)  数字不能开头

         3)  不能是关键字

      C. 标识符的命名规则(驼峰命名法)

         1)类的名字: 要求第一个字母大写,后面的字母小写,第二个单词首字母大写

         举例:   JinYanLong   Person

        2)方法的名字:要求首字母小写,第二个单词首字母大写

          距离:beiJingShi

       3)变量的名字: 全部小写

       4)常量的名字: 全部大写

3.常量

    A.常量是程序中固定不变的内容

    B. 常量的分类

     1)  整数常量:所有整数 123 0 -12

     2)  小数常量:1.1 2.2 3.3

     3)  字符常量:使用单引号引起来的,称为字符常量’’,字符常量只能有一个字符。

      注:‘‘中可以是空格,但是不能神农也不写

     4)  字符串常量:使用双引号引起来的,称为字符串常量,字符串常量不限制字符个数。

     5)  布尔常量:只有两个数值,true和false。都是关键字。

    true:条件成立,表示真。

   false:条件失败,表示假

   6)空常量:只有一个内容  null  也是个关键字,后面的引用数据类型中解释

4.进制

  A.进制是人们用于记数的方式,十进制  逢十进一

       1) 二进制: 逢二进一  0 1

       2)八进制: 逢八进一  0-7

       3)十进制:  逢十进一  0-9

       4)十六进制 : 逢十六进一  0-9 A B C D E F

B.二进制的由来

      最早起的计算机,电信号 (开关)

      后来用数字,表示电信号的开关 表示的数字只有 0 和 1

      8个进制位 表示1个字节Byte  1个8位

      1024个字节= 1千字节 KB

 

 

      由于二进制的数字位过长,而且不好记忆

      3个二进制表示1位 最大值7 八进制的诞生

      4个二进制表示1位 最大值F 十六进制的诞生

 

 

                               进制示意图

 

      C.代码实现:

        

      结果:

           

5.进制转换

    A. 十进制转成二进制

       转换方法:除以基数,获取余数 除2获取余数

       6 二进制是 110

       7 二进制是 111

      15 二进制是 1111

 

   

    B. 二进制转成十进制

      转换方法:每一个二进制数位,乘以2的次幂,有1位的数据相加

        1001101  从最低位开始计算,每一个位乘以2的次幂

 

    C. 二进制转成八进制

      将三个二进制为一组,进行转换,3位二进制转成十进制

        110011001

 

    D. 八进制转成二进制

      将八进制的每一位,转成二进制即可,不足三位的补0

       125

 

    E. 二进制转成十六进制

      将四个二进制为一组,转成十进制

      1100011100101

 

    F. 十六进制转成二进制

      将十六进制中的每一位,转成二进制,不足4位补0

      23D4

 

G. 十六进制,八进制,转成二进制,在转成十进制

                          进制转换示意图

     

6.使用8421快速转换方法

         32 16 8 4 2 1

       56   1  1 1 0 0 0

 

      请问: 8个二进制位 都是1十进制是几

         11111111  255

 

            7个二进制位 都是1十进制是几

        1111111   127

            16个进制位  都是1十进制是几

            65535

     记住三个数字 255 127  65535,后面的数据类型有关系

7.原码 反码 补码

     一个整数的二进制表现形式,码

      人的眼睛看到的数据,全部都是十进制,都是原码

      计算机的底层运算都是采用补码运算

 

      正数表现形式,采用1个字节来表示

         1 10000001

      正数和负数对于计算来讲,数的最高位是什么,如果是0,正数,如果是1负数

      正数1:

        原码 :  符号位     数值位

                 0        0000001

      

       反码:    0        0000001

 

 

       补码:    0        0000001

     

      结论 正数的原,反,补是一致的

 

 

      负数1:

               符号位      数值位

       源码:    1         0000001

 

       反码:    1         1111110

 

       补码:    1         1111111

 

       结论:负数原 符号位是1 ,数值位转成二进制

             负数反 符号位不变,数值位取反 1变0 0变1

            负数补 符号位不变,反码数值位+1

 

        -1   10000001   11111110   11111111

 

    

       小结:正数原反补码相同,负数 取反+1  符号不变

 

       小练习:

     已知某数X的原码为0b10110100,试求X的补码和反码。

       已知某数X的补码0b11101110,试求其原码。

 

     10110100 是一原码,计算出反码和补码

 

     原码:   符号位     数值位

                   1        0110100

        反码:     1        1001011

        补码:     1        1001100

 

      

       11101110 是一补码,计算出反码和原码

 

       补码:   符号位       数值位

                  1          1101110

      

       反码:     1          1101101

 

       原码:     1          0010010

         

 

8.变量

       变量和常量:常量固定不变,变量的数值可以变化的

       变量其实就是存储一个数值,但是变量每次存储的数据可以变化,方便计算

 

       先期,可以将变量理解为,数学中的未知数

       计算机中,是需要计算的,运行的程序都会在内存

 

       定义变量的格式:记住,记死

           数据类型 变量名 =  赋值;

          数据类型:内存中区域存储的数据是什么类型

          变量名(标识符):对内存区域起个名

          赋值,是将数据存储到这个区域中

 

                           变量在内存中示意图

        

9.数据类型

    JAVA是一个强制数据类型的语言

     计算机中数据,进行分类,分成两个类别

     基本数据类型:

           数值型:

              整数

                字节型,短整型 , 整型,长整型

              浮点

                单精度,双精度

 

           字符型: 单引号

           布尔型: 真假值

 

       引用数据类型

           类

           数组

           接口

 

       整数:

          字节型 byte 内存中占1个字节,1个8位,8个二进制位

          取值范围 1个字节   -128 ~ 127

 

          短整型 short 内存中占2个字节,2个8位,16个二进制位

          取值范围 2个字节   -32768 ~ 32767

 

          整型 int 内存中占4个字节,4个8为,32个二进制位

          java中所有的整数,默认为int类型

          取值范围4个字节  -2147483648 ~ 2147483647

 

          长整型 long 内存中占8个字节,8个8位 64个二进制位

          取值范围8个字节

 

          byte short int long 4个都是关键字,表示整数类型的关键字

           1     2    4    8

 

    浮点:

   单精度:float  内存中占4个字节  32个二进制位

  双精度:double  内存中占8个字节  64个二进制位

      注:double是java中所有浮点类型的默认数据类型

     Float>long

 

 

  字符型:

     Char :只能存一个符号,内存中占2个字节 16个二进制位

     Java中的char类型,采用unicode进行编码,一个汉字在内存中占两个字节

 

布尔型:

     只有两个值 true 和flase,1个字节

 

数据类型代码表示:

 

 

  结果:

       

10.定义   和使用变量的注意事项

   A.变量的作用域问题

       定义的变量,只在定义的一对大括号之间有效,出去了就无效

   B.定义变量,必须赋使用值,不赋值不能

   C.建议在一行代码上,定义1个变量

 

11数据类型之间的转换

     A.布尔类型不能转换成其他数据类型

     B.默认转换

     Byte,short,char-int-long-float-double

         默认转换示意图

     

      C.运算中的自动转换

       JAVA中,计算数据的话,要求计算的数据必须是同一个数据类型

      如果数据类型不同,则发生类型转换,原则是:数据类型小的转换为数据类型大的(其中大小指的是取值范围,字节数)。

     1)  自动转换:不需要程序人员参与,转换原则:

        如果计算中有double类型,结果肯定是double类型 。举例: 1+3-1+1.1+5

        如果计算中有flaot类型,没有double类型,结果是float类型

        如果计算中没有浮点,如果有long型,结果就是long型

     代码演示:

            

                                    图形解释

   

 

        2)强制转换:取值范围大的,转成取值范围小的

                必须程序人员手动参与,JVM不会进行强转

                手动转标准格式:  目标类型 变量 = (目标类型)被转换的数据

      代码演示一:

                 

       结果:

       

                     

     代码演示2:

          

                                                                图形解释

         

         

   

   代码演示3:

             

     结果:

       

         

12. 数字和字符,字符串的运算

         System.out.println('a');

                   System.out.println('a'+1); 98

                   System.out.println("hello"+'a'+1); helloa1

                   任何数据类型和""字符串做+运算,结果都是字符串

                   ""+ 任何类型

                   在字符串中 + 不是加法运算,连接符号

代码演示:

      

结果:

   

 13. ASCII编码表

   美国标准信息交换码

   能不能让计算机直接识别人类的语言呢

   a-z A-Z 0-9 符号

   因此,既然计算机识别01的二进制

   让生活中的一个文字,对应1个十进制数,计算机自己去转二进制

   规定:

   a    97

   b    98

  

 

posted on 2015-03-12 22:29  星之钥匙  阅读(240)  评论(0编辑  收藏  举报