JAVA SE基础知识模块三

JAVA SE基础知识模块三

变量

  • 定义 在程序执行过程中 其值会发生变化的量
  • 变量是内存中的一小块空间 可以存储数据
  • 对于变量 我们得约束 约束变量的范围以及它的数值类型

Java中的数据类型

  • 类型 基本数据类型 引用数据类型
  • 基本数据类型
    • 整数型
      1. byte 占1个字节
      2. short 占2个字节
      3. int 占4个字节
      4. long 占8个字节
    • 浮点型
      1. float 占4个字节
      2. double 占8个字节
    • 布尔型 boolean
      1. true 占1个字节
      2. false 占1个字节
    • 字符型 char 占2个字节

定义变量的格式

  • 数据类型 变量名=值;

  • 变量的命名规范

    • 遵循通用规则
    • 变量名一般小写
    • 多个单词 第一个字母小写 其余字母首字母大写
    • 例如 studentName
  • 定义变量的注意事项

    • 作用域 同一个大括号{} 所括起来的范围
    • 在同一个作用域里面不能定义两个同名变量
    • 变量必须赋值才能使用
  • 其他定义变量的方式

    int a,b;
    a=10;b=20;
    
  • 一行上可以定义多个变量 建议一行一个

自动类型转换

  • Java中的数据类型的隐式转换(数据类型自动提升)

  • 当byte short char 在参与运算的时候 会自动提升为int类型

  • 如果还有 long float double 参与运算的时候 会相应的提升为 long float double

  • byte short char 这三者之间不参与转换

  • boolean类型不参与数学运算

    class DataType {
    	public static void main(String[] args) 
    	{
    		byte a=20;
    		byte b=60;
    		byte c=50;
    		int d=100;
    		long e=1L;
    		float g=3.22f;
    		double f=3.5858;
    		double x=a+b+c+d+e+g+f;
    		System.out.println(x);
    	}
    }
    

运行结果

强制类型转换

  • 定义 将数据类型强制转换为目标类型

  • 原理 把多余字节丢弃掉 保留目标数据类型的字节

  • 问题 可能会发生精度损失的问题 不建议使用

  • 将多余字节丢弃 只保留强制转换的类型的字节 因此 符号位也有可能发生变化

    class DataType1 {
    public static void main(String[] args) {
    byte a=20;
    byte b=10;
    byte x=(byte)(a+b);
    System.out.println(x);}}
    

运行结果

  • 常量优化机制

    • 当多个常量参与运算的时候 会先计算他们的结果在不在这个数据类型的范围内

    • 在就不报错 不在就报错

      class DataType2 {
      public static void main(String[] args) {
      byte a=20;
      byte b=10;
      byte x=30+20;
      System.out.println(x);}}
      

      运行结果

  • ! 整数默认为int类型 小数默认为double类型

  • Java语言中char类型可以存储一个中文字符

    • char 占两个字节
    • 如果是GBK码表就可以存放一个汉字
    • UTF-8码表一个汉字占三个字节 如果是其他码表 有可能会出错
  • 当char字符参与运算的时候 会查找该字符在ASCII码表中的十进制值

    • 'a‘ 97
    • ‘A’ 65
    • ’0‘ 48
    • 注意 空格也是字符也有数值

+号的作用

  • 数学意义上的相加

  • 拼接符的作用

    • 当+号两端 只要任意一端是一个字符串 就会起拼接作用 将两段内容拼接起来
    System.out.println("Hello World!"+'a'+1);//Hello World!a1
    System.out.println('a'+1+"Hello World!");//98Hello World!
    System.out.println(1+"56658");//156658
    System.out.println(1+56658);//56659
    

运算符

  • 定义 对常量或变量进行运算操作的符号

  • 分类

    1. 数学运算符 + - * / ++ – %

      class ShuXue {
      public static void main(String[] args) {
      int a=10;
      double b=3;
      double x=a/b;
      System.out.println(x);
      System.out.println(10%3);}}
      

运行结果
- ++与–(++ 自身增1–自身减1)

 - 单独使用时 在前在后没有区别

   ```
   class JiaJian {
   public static void main(String[] args) {
   int a=1;
   a++;++a;a--;--a;
   System.out.println(a);}}
   ```

运行结果
- 混合使用

   ```
   class JiaJian 
   {0public static void main(String[] args) {
   int a=1;
   int x=a++;
   x=++a;
   System.out.println(x);}}
   ```
  1. 比较运算符

    1. 赋值运算符 == = += -= *= /= %=

      • = 把右边的整数常量赋值给左边的这个int类型的变量a

        int a=10;
        System.out.println(a);
        
        
运行结果:10

    - += 

      ```
      int b=20;
      b=10+b;//b+=10;
      System.out.println(b);
      
      ```

      - +=运算符可以帮你自动强制转换数据类型

    - 其余运算符类似

 2. 关系运算符 == != < > <= >= instanceof

    - =与==的区别 注意
    - 比较运算符的运算结果是布尔类型 
  1. 逻辑运算符

  2. 位运算符

  3. 三元运算符

JAVASE基础待续…

猜你喜欢

转载自blog.csdn.net/cx9977/article/details/107301702