JavaNote01_变量 基本数据类型

时间:2022-04-09 12:25:37

》主要内容:

  变量的初始化、赋值、读写操作

  8中基本数据类型(取值范围)、整数的直接量(字面量)是哪种类型、浮点数的字面量是哪种类型

》变量

  》》声明变量:开启一个存储单元,用于存储一个数据。

  》》注意:

    1. Java必须先声明, 并且初始化以后才能使用

    2. 在同一个作用域中不能重复定义!

    3. 变量可以多次赋值,重复使用

    4. 声明变量时候同时初始化

    5. 一行声明多个变量   

 package a1_test.com;

 public class Test01 {
public static void main(String[] args) {
int i; //声明变量
i = 100; //对已经声明的变量进行初始化
int j = 200; //声明变量的同时进行初始化
}
}

变量的声明、初始化

  》》命名规则:

    变量名,方法名,类名的命名规则:

      可以由 字母 数字 _ $ 组成

      不能以数字为开头

      不能包含特殊符号

      大小写敏感--区分大小写

      不能使用关键字和特殊字面量

      1. 关键字 if class
      2. 保留关键字 保留字: goto const
      3. 特殊字面量:true false null
 int a;
a = 3; //赋值语句,将3数字装到变量的空间中
// 将3写入到a变量中,将3保存到a变量中
int b;
b = a;//将变量a值读取出来,赋值到变量b
//变量可以进行 读写操作--访问一个变量
int c = a+b;
System.out.println(c);//

变量的读写操作

》Java中的8种基本类型

整数4种 - byte short int long - 浮点数2种 - float double - 字符类型 - char - 布尔类型 - boolean

  》》byte

  1. 在计算机底层 8 位2进制数。
  2. 范围 -128 ~ 127 ,有符号数
  3. 不能进行超范围赋  byte b = 128; //出现编译错误
  4. 实用性不高, 使用不多
  5. 用于表示最小的存储单元。
 package a1_test.com;

 public class Test01 {
public static void main(String[] args) { //出现编译错误:Type mismatch: cannot convert from int to byte
byte i = 128;
}
}

编译错误

  》》short

  1. 占用16位2进制
  2. 范围 -32768 ~ 32767
  3. 实用性不高!
  4. 不能超范围赋值: short s = 32768; //出现编译错误

  》》int

  1. 占用32位2进制空间,相当于4 byte
  2. 范围:-21亿 ~ 21亿
  3. 不能超范围赋值
    • int i = 2200000000;//编译错误
  4. 最常用的 数据类型。
  5. 整数的直接量是int类型数据
    • 直接量不能超出整数int范围
    • 0x作为16进行的直接量
      • 16进制数字:0~9 a~f
      • int n = 0xff;
  6. 整数除法是整除
  7. Java整除计算会溢出,不会出现错误
    • 程序员要注意范围,避免溢出。
 package a1_test.com;

 public class Test01 {
public static void main(String[] args) { //出现编译错误:The literal 4000000000 of type int is out of range
//原因:整数的直接量是int类型
//解决办法:在整数后面添加一个l/L让其变成长整型
long l = 4000000000;
System.out.println(l);
}
}

整数的直接量

  》》long

  1. 采用64存储,相当于8个byte
  2. 范围:非常大!
  3. 以l、L为结尾的字面量是long类型的字面量。
  4. 超过int范围的数据要采用long类型进行计算
  5. 计算机中时间采用long类型表示
    • 计算机时间是从1970年到现在累计的毫秒数

  》》浮点数类型

  浮点数采用的2进制科学计数法。 

  float double

  1. float 32位浮点数
  2. double 64位点数
  3. double 的精确程度是float的两倍
  4. 浮点数字面量默认类型是double,f为后缀的字面量是float类型
  5. double 类型计算有舍入误差!天生现象!

》作业

  1. 定义整数变量 a b c d, 分别赋值特定数,并且进行计算,得到如下结果:
    • 计算a+b的结果
    • 计算a*b结果
    • 计算a/b的结果
    • 设计一组数据使a+b+c+d的计算结果溢出
    • 利用long类型解决a+b+c+d溢出的问题。
  2. 定byte short类型的变量 e 和 f,利用字面量初始化为特定的值,输出这些值。
  3. 定义double类型的变量x,c, 其中c赋值为光速,计算x的值为一个光年的距离,结果单位为“米”。
  4. 查询资料,利用double类型计算银河系的宽度。