二、Java变量

一、变量介绍

1.1 为什么需要变量

在这里插入图片描述

1.2 变量的介绍

在这里插入图片描述

在这里插入图片描述

1.4 变量使用注意事项

在这里插入图片描述

二、+号的使用

在这里插入图片描述

三、数据类型

在这里插入图片描述

1.1 整数类型

  • 基本介绍
    Java的整数类型就是用于存放这整数值的,比如 12,30,3456等等
    在这里插入图片描述

在这里插入图片描述

  • 代码说明
public class IntDetail{
    public static void main(String[] args){
        // Java的整型常量默认为 int 型,声明long型常量须后加 'l' 或加 'L'
        int n1 = 1; // 4个字节
        int n2 = 1L;// 会报错
        long n3 = 1L;// 8个字节
    }
}

1.2 浮点类型

  • 基本介绍
    Java的浮点类型可以表示一个小数,比如 123.4,7.8,0.12等等
    在这里插入图片描述

在这里插入图片描述

public class FloatDetail{
    public static void main(String[] args){
        // Java的整型常量默认为 int 型,声明long型常量须后加 'l' 或加 'L'
        float n1 = 1.1; // 会报错
        float n2 = 1.1F; // 占4个字节
        float n3 = 1.1F; // 占4个字节 
        double n4 = 1.1; // 8个字节
        
        // 十进制数形式:如 5.12            512.0f                   .512
        double num5 = .123; // 等价 0.123
        // 科学计数法形式:如:5.12e2      5.12E-2
        System.out.println(5.12e2)
        System.out.println(5.12E-2)

        // 浮点数使用陷阱:2.7 和 8.1 / 3 比较
        double num11 = 2.7;
        double num12 = 8.1 / 3; // 数学结果是2.7,计算机结果是接近2.7的一个小数
        
        // 得到一个重要的使用点:当我们对运算结果是小数的数进行相等判断时,要小心
        // 应该是以两个数的差值的绝对值,在某个精度范围内判断
        if(Math.abs(num11 - num12) < 0.00001){
        }
    }
}

1.3 字符类型(char)

  • 基本介绍
    字符类型可以表示单个字符,字符类型是char,char是两个字节(可以存放汉字),多个字符我们用字符串String(我们后面详细讲解String)
    在这里插入图片描述
public class CharDetail{
    public static void main(String[] args){
        char c1 = 'a';
        char c2 = '\t';
        char c3 = '韩';
        char c4 = 97; // 说明:字符类型可以直接存放一个数字
        
        char c2 = 'a'; // 输出 'a' 对应的 数字
        System.out.println((int) c2); // 使用强制转换
        char c3  = '韩';
        System.out.println((int) c3); // 38889
        char c4 = 38889;
        System.out.println(c4); // 韩

        // char 类型是可以进行运算的,相当于一个整数,因为它都对应有Unicode码
        System.out.println('a' + 10); // 107
    }
}

1.4 布尔类型:boolean

在这里插入图片描述

在这里插入图片描述

四、编码

  • 字符类型本质探讨
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

五、数据类型转换

5.1 自动类型转换

在这里插入图片描述

  • 自动类型转换使用和细节

在这里插入图片描述

public class AutoCovertDetail{
    public static void main(){
        // byte、short 和 char 之间不会相互自动转换
        // 当把具体的数赋给 byte(或char\short) 时,(1) 先判断是否在byte范围内,如果是就可以
        byte b1 = 10; // 对, -128~127
        int n2 = 1;
        byte b2 = n2; // 错误。原因:如果是变量赋值,判断类型

        // 细节4:byte,short,char 它们三者可以计算,在计算时首先转换为int类型
        byte b2 = 1;
        short s1 = 1;
        short s2 = b2 + s1; // 错,b2 + s1 => int
        byte b4 = b2 + s1;// 错,b2 + s1 => int
        int s2 = b2 + s1; // 对,b2 + s1 => int
    }
}

5.2 强制类型转换

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

5.3 基本数据类型和String类型的转换

在这里插入图片描述

  • 在Java中每一个基本数据类型都对应一个包装类,以实现对象的功能
public class StringToBasic{
    public static void main(String[] args){
        String s5 = "123";
        // 解读  s5.charAt(0)  将 s5 字符串的第一个字符 '1'
        System.out.println(s5.charAt(0))
    }
}

六、课后作业

在这里插入图片描述

在这里插入图片描述

七、扩展知识

7.1 Java API 文档

在这里插入图片描述

7.2 Java中变量存放位置

  • 在方法中声明的变量,即该变量是局部变量,每当程序调用方法时,系统都会为该方法建立一个方法栈,其所在方法中声明的变量就放在方法栈中,当方法结束系统会释放方法栈,其对应在该方法中声明的变量随着栈的销毁而结束,这就局部变量只能在方法中有效的原因。在方法中声明的变量可以是基本类型的变量,也可以是引用类型的变量
    1. 当声明是基本类型的变量的时,其变量名(变量名及值是两个概念)是放在JAVA虚拟机栈
    2. 当声明的是引用类型变量时,所声明的变量名(该变量实际上是在方法中存储的是内存地址值)是放在JAVA虚拟机的栈中,该变量所指向的对象是放在堆内存中的。
  • 在类中声明的变量是成员变量,也叫全局变量,放在堆中的(因为全局变量不会随着某个方法执行结束而销毁)。同样在类中声明的变量即可是基本类型的变量,也可是引用类型的变量
    1. 当声明的是基本类型的变量变量名其值放在堆内存中的
    2. 引用类型时,其声明的变量仍然会存储一个内存地址值,该内存地址值指向所引用的对象。引用变量名对应的对象仍然存储在相应的堆中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ModelBulider

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值