数据类型及其扩展

数据类型和扩展

强类型语言

  1. 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用

    变量:可以变化的量

    • type varName [=value] [{,varName[=value]}];
    • //数据类型 变量名 = 值;可以用逗号隔开来表明多个同类型变量。
  2. Java的数据类型分为两大类

    1. 基本类型(primitive type)
    2. 引用类型(reference type)

基本数据类型

数值类型

  1. 整数类型(primitive type)
  • byte占1个字节:-128-127

  • short占2个字节:-32768-32767

  • int占4个字节:-2147483648-2147486947

  • long占8个字节:-9223372036854775808-9223372036854775807

  1. 浮点类型-小数点
  • float占4个字节
  • double占8个字节
  1. 字符类型
    • char占2个字符-单字
boolean类型:占1位其值只有ture和false
引用数据类型(Reference Type)
  1. 接口

  2. 数组

8大基本类型

//8大基本数据类型
 //整数
 int num1=10;//最常用
 byte num2=20;
 short num3=30;
 long num4=30L;//long类型要在数字后面加L
 //小数:浮点数
 float num5=50.1F;//float类型要在数字后面加F
 double num=3.141592653589793238462643;
 //字符
 char name = '秦';
 //字符串:String不是关键词,是类
 String namea="秦将";
 //布尔值:是非
 boolean flag=true;
 //boolean flag=false

字节

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

数据类型的扩展

public class demo03 {
    public static void main(String[] args) {
        //整数拓展  进制  二进制0b  十进制  八进制0   十六进制0x
        int I=10;
        int i2=010;//八进制0
        int i3=0x20;//十六进制0x   0-9  A-F  F=16
        int i4=0b10;//二进制0b
        System.out.println(I);
        System.out.println(i2);
        System.out.println(i3);
        System.out.println(i4);
        //浮点数拓展
        //BigDecimal  数学工具类
        //float   表现字长有限    离散  舍入误差   约等于  接近但不等于
        //double
        //最好避免完全使用浮点数进行比较
        //最好避免完全使用浮点数进行比较
        //最好避免完全使用浮点数进行比较
        float f=0.1f;//0.1
        double d=1.0/10;//0.1
        System.out.println(f==d);//false(//==代表前后)相等
        System.out.println(f);
        System.out.println(d);

        float d1=233333333333f;
        float d2=d1+1;
        System.out.println(d1==d2);//true
        //字符扩展   单引号表示字符常量;
        char c1='a';
        char c2='中';
        System.out.println(c1);
        System.out.println((int)c1);//强制转换
        System.out.println(c2);
        System.out.println((int)c2);//强制转换
        //所有的字符本质还是数字
        //编码问题  Unicode  表:(97=a  A=65)  占2个字节   65536个字符    EXCLE  最长2的16次方=65536
        //U0000-UFFFF
        char c3='\u0061';//a
        System.out.println(c3);
        //转义字符
        //\t   制表符
        //\n   换行
        //....自查转义字符
        System.out.println("Hello\nworld");
        String sa= new String("hello world"); //new会在内存创建一块新的空间
        String sb= new String("hello world"); //new会在内存创建一块新的空间
        System.out.println(sa==sb);
        String sc="hello world";
        String sd="hello world";
        System.out.println(sc==sd);
        //对象  从内存分析解释

        //布尔值扩展
        boolean flag = true;
        if (flag==true){}//新手 明确前后相等
        if (flag){}//老手 已知相等
        //less is more! 代码需要精简易读
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值