六、数据类型讲解和扩展

博客主要讲解数据类型,介绍了强类型语言需严格按规定使用变量,先定义后使用。阐述了Java的数据类型,包括基本数据类型(数值、字符、布尔等)和引用数据类型,还说明了位和字节的概念,最后提及数据类型扩展。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据类型讲解

强类型语言

  • 要求变量的使用严格符合规定,所有变量都必须先定义再使用。

弱类型语言

Java的数据类型

  1. 基本数据类型

    • 数值类型

      • 整数类型:

        • byte占1个字节:-128~127
        • short占2个字节:-32768~32767
        • int占4个字节:-2147483648~2147483647
        • long占8个字节:-2^63 ~ 2^63-1(-922 3372 0368 5477 5808~922 3372 0368 5477 5807)
      • 浮点类型:

        • float占4个字节
        • double占8个字节
      • 字符类型:char占2个字节

    • boolean类型:占1位,其值只有true和false

  2. 引用数据类型

    • 接口
    • 数组
  3. 代码

public class Demo02 {
    public static void main(String[] args) {
        //八大基本数据类型

        //整数
        //类Integer 类Byte
        int num1 = 10; //最常用
        byte num2 = 20;
        short num3 = 30;
        long num4 = 30L; //Long类型要在数字后面加个L

        //小数,即浮点数
        float num5 = 50.1F; //float类型要在数字后面加个F
        double num6 = 3.141592653589793238462643;

        //字符
        char name = 'A';
        //字符串,String不是关键字,是个类
        //String namea = "字符串";

        //布尔值:是非
        boolean flag = true;
        //boolean flag = false;
    }
}

位和字节的概念

  1. 位(bit):是计算机 内部数据 储存的最小单位,11001100是一个八位二进制数。
  2. 字节(byte):是计算机中 数据处理 的基本单位,习惯上用大写B来表示。
  3. 1B (byte,字节) = 8b (bit,位)
  4. 字符:是指计算机中使用的字母、数字、字和符号

数据类型扩展

import com.sun.management.VMOption;

public class Demo03 {
    public static void main(String[] args) {
        // 整数拓展:  进制   二进制0b  十进制  八进制0  十六进制0x
        int i = 10;
        int i2 = 010;  // 八进制0
        int i3 = 0x10;  // 十六进制0x  0~9 A~F 16

        // 浮点数拓展:  银行业务怎么表示?钱
        // BigDecimal  数学工具类
        // float  有限  离散  舍入误差  大约  接近但不等于
        // double
        // 最好完全避免使用浮点数进行比较
        float f = 0.1f;  //0.1
        double d = 1.0/10;  //0.1
        System.out.println(f==d);  //false

        float f1 = 233333333333f;
        float f2 = f1 + 1;
        System.out.println(f1==f2);  //true

        // 字符拓展
        // 所有字符本质都是数字
        // 编码 Unicode  2字节  0~65536  表:(97=a  65=A)
        char c1 = 'a';
        char c2 = '中';
        System.out.println(c1);
        System.out.println((int)c1); //强制转换
        System.out.println(c2);
        System.out.println((int)c2); //强制转换

        // U0000  UFFFF
        char c3 = '\u0061';
        System.out.println(c3); //a

        // 转义字符
        // \t  制表符  \n  换行符  ......
        System.out.println("Hello\tWorld");
        System.out.println("Hello\nWorld");

        // 对象  从内存分析
        String sa = new String("hello world");
        String sb = new String("hello world");
        System.out.println(sa==sb);
        String sc = "hello world";
        String sd = "hello world";
        System.out.println(sc==sd);

        // bool值拓展
        // 代码精简易读
        boolean flag = true;
        if(flag == true){}
        if(flag){}

    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值