java四类八种数据类型

  1. 第一类:逻辑型boolean boolean类型数据只允许取值true或false,不可以0或非0的整数代替true和false,这点与C语言不同

  2. 第二类:文本型char(占两个字节)
    字符常量是用单引号括骑楼的单个字符,例如:

    char eChar = 'a';
    char cChar = '中';

    Java字符采用Unicode编码,每个字符占两个字节,因而可用十六进制编码形式表示,例如:

    char c1 = '\u0061';//Unicode是全球语言统一编码

    Java语言中还允许使用转义符‘\’来将其后的字符转变为其它的含义,例如:

    char c2 = '\n';//'\n'表示换行符
  3. 第三类:整数型(byte、short、int、long)
    Java各整数类型有固定的表数范围和字段长度,其不受具体操作系统的影响以保证Java程序的可移植性
    Java语言整型常量的三种表示形式,如下:

    //十进制整数
    int a = 10;
    int b = 0;
    int c = -100;
    //八进制整数,以0开头
    int d = 010;//与a值不等
    //十六进制整数,以0x开头或者0X开头
    int e = 0x12;
    int f = 0X12;
    
    //short从-32768到32767共五位,超过范围报错
    short s = 100;
    //int从-2147483648,到2147483647共10位,超过范围报错
    int i = 11111;
    //long从-9223372036854775808到9223372036854775807共19位,定义时后面需加上'l'或'L'
    long l = 11111111111L;
    long ll = 111111111111l;

    byte与char的区别:
    (1)byte是字节数据类型,带符号,占一个字节,大小范围为-128~127
    (2)char是字符数据类型,无符号,占两个字节(Unicode码),大小范围是0~65535,char是一个16位二进制 的Unicode字符,Java用char来表示一个字符

    char c = (char) -3; // char不能识别负数,必须强制转换否则报错,即使强制转换之后,也无法识别  
    System.out.println(c);  
    byte d1 = 1;  
    byte d2 = -1;  
    byte d3 = 127; // 如果是byte d3 = 128;会报错  
    byte d4 = -128; // 如果是byte d4 = -129;会报错  
    System.out.println(d1);  
    System.out.println(d2);  
    System.out.println(d3);  
    System.out.println(d4);  
    char e1 = '中', e2 = '国';  
    byte f= (byte) '中'; //必须强制转换否则报错  
    System.out.println(e1);  
    System.out.println(e2);  
    System.out.println(f); 
    //打印结果为:
    ?
    1
    -1
    127
    -128
    中
    国
    45
  4. 第四类:浮点型(float、double)
    与整数类型类似,Java浮点类型有固定的表数范围和字段长度,不受平台影响

    //Java浮点型常量默认为double型,保证小数点后15位为绝对精确
    double d = 12345.5;
    //float必须后面添加f或F,保证小数点后6位为绝对精确
    float f = 12.3F;
    float ff = 123.15f;
  5. 所占字节长度

    类型占用存储空间
    boolean1
    byte1字节8
    short2字节16
    int4字节32
    long8字节64
    float4字节32
    double8字节64

    boolean类型没有给出精确的定义,《Java虚拟机规范》给出了4个字节,和boolean数组1个字节的定义,具体还要看虚拟机实现是否按照规范来,所以1个字节、4个字节都是有可能的。

 

转载于:https://my.oschina.net/yueshengwujie/blog/676577

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值