欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java语言基础(day02)

程序员文章站 2022-05-03 20:04:15
...

01_Java语言基础(注释的基本用法)(掌握)

  • 定义:在程序中用来解释说明程序的文字。
  • 格式:
    • 单行注释
    • // 注释文字
    • 多行注释
    • /* 注释文字 */
    • 文档注释
    • /** 注释文字 */—文档注释中的文字可以利用工具或者命令进行提取。
    • javadoc 要提取的Java源文件—注意,一个类如果能够被提取,必须是公共类。
  • 注释作用:解释程序;便于阅读、维护;排错。

02_Java语言基础(数据类型)(掌握)

  • Java的数据类型(两类)

  • 基本类型(8种)

    • byte 1字节 取值范围 -128到127,-2^7 到 2^7-1
    • short 2字节 取值范围-2^15 到2^15-1
    • int 4字节 取值范围-2^31 到 2^31-1
    • long 8字节 取值范围-2^63 到 2^63-1
    • float 4字节 单精度
    • double 8字节 双精度
    • char 2字节 取值范围 0到65535
    • boolean 1字节
      • 真 true 00000001
      • 假 false 00000000
  • 注意 :

    • byte 字节型 1个字节 8位 取值范围:-2^7~ 2^7-1 (-128 ~ 127)
      • byte b =128;
    • short 短整型 2字节 16 -2^15~ 2^15-1 (-32768 ~ 32767)
    • int 整型 4个字节 32位 -2^31~ 2^31-1。
      • Java程序中默认的整数类型是int
    • long 长整型 8个字节 64位 -2^63 ~ 2^63-1.
      • 在数据利用L(l)来标识长整型的数据。
      • long l =100L;
    • 浮点型:
    • float 单精度 4字节 32位
      • float不是小数的默认的数据类型。
    • double 双精度 8字节 64位
      • double类型是小数默认的类型
  • 总结 :四类八种

    • 布尔型:boolean 字节不确定,具体的占用 与 jdk 操作系统有关
    • 整型:byte short int long
    • 浮点型:float double
    • 字符型:char
  • 引用类型

    • 类class
    • 接口–interface
    • 数组[ ]
    • 所有引用类型的默认值都是null

03_Java语言基础(计算机的存储单位)

  • bit 1个电位
  • byte 字节,8个bit
  • Kb 1024 byte
  • Mb 1024 Kb
  • Gb 1024 Mb
  • Tb 1024 Gb
  • Pb 1024 Tb

04_Java语言基础(二进制)(掌握)

略略略,????

05_Java语言基础(字符编码 )(了解 )

  • char 2字节 16位
  • 阿斯科码表 ASCII码表 0-127 表示的英文字母及特殊字符。
  • 西欧码表 256 1字节(iso-8895-1)兼容的ASCII码表 GB2312, 2字节 简体中文,big-5,常用的码表是 gbk.
  • Unicode编码体系 2字节 ,在Unicode之下,衍生了出来新的码表–utf-8, 占用3个字节(万国码表) 收录了常用的语言常用的字符。

06_Java语言基础(数据类型转换)(掌握)

  • 1.隐式转换(自动转换)
  • 定义 :小的数据类型可以自动转换为大的数据类型
    • float f =3.2f;
    • double d= f;
    • float—>double
  • char<–>int 在ASCII码表范围之内。
    • int–float
    • long --float
  • 所有的整型都是可以赋值给浮点型的。
    • byte short -->char类型需要注意:
    • byte b1 =‘a’;
    • char c1 = b1;
    • 结果不正确。Java分开编译,b1=’a’已经确定了b1的类型,当需要把b1给c1的时候,jvm不能确定其范围,所以报错。
  • 总结 :小 --> 大
    • 自动转换
    • 整数转浮点数,可能会不精确
    • 在计算机中,绝大数多数小数是不能够精确的存储的。
  • 2.显示转换(强制转换)
    • 定义 :大的数据类型转换为小的数据类,这个过程称为强制转换
    • 浮点类型转换整型,需要强转。舍弃小数部分,不是不是四舍五入。在这个过程中出现精度损失。
      • double–>int 可能会有精度损失。
    • 总结:大 ----> 小
      • 必须要强制转型
      • 会有数据损失
      • 浮点数转成整数,直接舍弃小数位

07_Java语言基础(转义字符)(掌握)

  • 制表符: \t ‘\t’
  • 回车:\r
  • 换行:\n
  • 单引号:\’
  • 双引号:\”

08_Java语言基础(运算符)(掌握)

  • + - * /

    • 数学运算,字符串连接运算
  • %

    • 取余,求模
    • 判断a能否被4整除,看a%4 余数是否是0
  • ==

    • 是否相等
  • !=

    • 是否不相等
  • > >= < <=

  • &&

    • 逻辑与 : 左边是真,并且右边是真,结果才是真
    • 短路与 : 左边是假,右边被忽略不执行
  • ||

    • 逻辑或 : 左边是真,或者右边是真,结果都是真
    • 短路或 : 左边是真,右边被忽略不执行
  • !

    • 非 : 非真是假,非假是真
      • 用来做相反的条件判断
      • //如果"非a"是真,即a是假
      • if(!a) {
        }
  • &

    • 位与 : 上边是1并且下边是1,结果是1
  • |

    • 位或 : 上边是1,或者下边是1,结果都是1
  • ^

    • 异或 : 不同是1 ; 对同一个值异或两次,得到原值
  • ~

    • 求反 : 1变0 , 0变1
  • >>

    • 带符号右移位
    • 符号位是1,左边补1
    • 右移1位相当于除2
  • >>>

    • 不带符号右移位
    • 符号位是1,左边补0
  • <<

    • 左移位
    • 左移1位相当于乘2
  • ++

    • 自增
    • a = 5;
    • print(a++);//先取值再自增
      1. 先取原值5,等待打印
      1. a自增变成6
      1. 打印原值5

    a = 5;
    print(++a); // a先自增再取值

    1. 先自增变成6
    2. 取新值6,等待打印
    3. 打印新值6
  • - -

    • 自减

09_Java语言基础(总结 )

  • 基本类型

  • byte 1,short 2,int 4,long 8

  • float 4,double 8

  • char 2

  • boolean 1

  • 字面值规则(5条)

  • A. 整数字面值是int类型

    • 4565 int
  • B. byte,short,char三种比int小的整数,允许用范围内的值,直接赋值

    • byte a = 127 ; //右侧是byte类型
    • byte a = 128 ; //右侧是int类型
  • C. 浮点数字面值是 double

    • double d = 3.14;
    • float f = 3.14 ; // 错误 ,右侧是double类型
  • D. 字面值的后缀

    • L - long

    long a = 9999999999L;

    • F - float

    flaot f = 3.14F;

    • D - double

    double a = 3.0 ;
    double a = 3D;

  • E . 进制前缀

    • 0x ---->16进制

      0xff 255

    • 0 ----> 8进制

      0377 255

    • \u ----> char类型16进制

      必须完整表示char类型的两个字节值

      ‘\u0061’ 97 ‘a’

      ‘\u4e2d’ 20013 ‘中’

  • 运算规则(5条)

    • A. 运算结果的类型,与最大的类型一致

      3/2 得1

      3d/2 得1.5

  • B. byte,short,char三个比int小的整数,运算时,会先自动转成 int

     byte a = 3;
     byte b = 4;
    //错,右侧是int+int,结果是int
    byte c = a+b;
  • C. 整数运算溢出
 类似时钟,从最小加到最大,再加,回到最小
   Integer.MAX_VALUE + 1 负数最小值
   300000000*60*60*24*365  错
   300000000L*60*60*24*365
   
  • D. 浮点数运算不精确

    2-1.9
    得 0.1000000000000009

    4.35*100
    得 434.9999999999999994

    • 根据 IEEE754规范,做某些浮点数运算时,会产生不精确结果
    • Java提供了精确运算的方法,后面会讲
  • E . 浮点数的特殊值

    • Infinity

    无穷大
    3.14/0

    • NaN
    • Not a Number

    Math.sqrt(-4)