深入理解Java基础类型

1、Java基础数据类型
     Java的基本数据类型可以分为两大类:数值类型和布尔类型。而数值类型又可以分为整型和浮点型,整型里的字符型往往也被单独对待。因此常常也把Java里的基本数据类型分为四类:

a、整数类型(整型)
     byte:在内存中占1个字节(8位),表数范围-2^7到2^7-1(-128到127)
     short:在内存中占2个字节(16位),表数范围-2^15到2^15-1(-32768到32767)
     int:在内存中占4个字节(32位),表数范围-2^31到2^31-1
     long:在内存中占8个字节(64位),表数范围-2^63到2^63-1
 整数常量的表示方式:10进制、8进制(0开头)、16进制(0x或者0X开头)
b、字符型
     字符型char在内存中占两个字节。Java语言使用16进制的Unicode编码集作为编码方式,支持世界上所有的书面语言字符。
     字符型常量必须使用单引号括起来,有三种表示形式:
     1>直接通过单个字符来表示字符常量,比如'A'、'9'
     2>通过转义字符表示特殊的字符常量,比如'\n'、'\t'
     3>直接使用Unicode值来表示字符常量,格式是'\uXXXX',其中XXXX表示一个16进制的整数
附:字符常量可以采用十六进制的编码方式来表示,范围为'\u0000'到'\uFFFF',一共可以表示65535个字符,其中前256个('\u0000'到'\u00FF')字符与ASCII码中的字符完全重合。
     同时由于char类型的值在内存中存储的依然是数字,因此其可以和整数型的值互相赋值,但注意表数范围是16位的无符号正数(0到65535)
  // 直接通过单个字符表示字符常量
  char charData0 = 'A' ;
  char charData1 = '蔡' ;
  System. out .println( "charData0=" + charData0 );
  System. out .println( "charData1=" + charData1 );
  // 使用Unicode编码值来表示字符常量
  char charData2 = '\u0041' ; // 字符A的十进制ASCII值是65,十六进制的ASCII码值是41,其Unicode码也是41
  char charData3 = '\u8521' ; // 字符'蔡'的Unicode表示\u8521
  System. out .println( "charData2=" + charData2 );
  System. out .println( "charData3=" + charData3 );
  // 使用转义字符来表示特殊的字符常量
  char charData4 = '\n' ;
  System. out .println( "charData4=" + charData4 );
              
  /************整型和字符型变量互换***********/
  // 直接将字符型变量赋给整型变量
  int intData0 = '蔡' ;
  System. out .println( "intData0=" + intData0 );
  // 直接将一个0到65535范围内的整数赋给一个字符型变量
  char charData5 = 34081; // 字符'蔡'的十进制表示34081
  char charData6 = 0x8521; // 字符'蔡'的十六进制表示0x8521
  System. out .println( "charData5=" + charData5 );
  System. out .println( "charData6=" + charData6 );
输出: charData0=A
     charData1=蔡
     charData2=A
     charData3=蔡
     charData4=

     intData0=34081
     charData5=蔡
     charData6=蔡

c、浮点型
     Java浮点类型只有两种,分别是float和double。其中float(单精度浮点数)在内存中占4个字节(32位),double(双精度浮点数)在内存中占8个字节(64位)。
     单精度浮点型常量必须以f或者F结尾,而double则不需要。表示方式有两种:标准小数形式和科学计数法形式(略)。
d、布尔型
     Java中的布尔型的数值只能是true或者false,不能使用0或者非0来表示。其他基本数据类型的值也不能转换成boolean类型。
      boolean booleanData0 = false ;
   // 错误写法,java的布尔类型只能是true或者false,不能使用0或非0来替换
   // boolean booleanEData1 = 2;
   // boolean booleanErrorData2 = 0;

附:全部代码:
package javabase;

public class DataType {
       public static void main(String args []){
             // 直接通过单个字符表示字符常量
             char charData0 = 'A' ;
             char charData1 = '蔡' ;
            System. out .println( "charData0=" + charData0 );
            System. out .println( "charData1=" + charData1 );
             // 使用Unicode编码值来表示字符常量
             char charData2 = '\u0041' ; // 字符A ASCII值65 ,转换成十六进制的 Unicode码是41
             char charData3 = '\u8521' ; // 字符'蔡'的Unicode表示\u8521
            System. out .println( "charData2=" + charData2 );
            System. out .println( "charData3=" + charData3 );
             // 使用转义字符来表示特殊的字符常量
             char charData4 = '\n' ;
            System. out .println( "charData4=" + charData4 );
            
             /************整型和字符型变量互换***********/
             // 直接将字符型变量赋给整型变量
             int intData0 = '蔡' ;
            System. out .println( "intData0=" + intData0 );
             // 直接将一个0到65535范围内的整数赋给一个字符型变量
             char charData5 = 34081; // 字符'蔡'的十进制表示34081
             char charData6 = 0x8521; // 字符'蔡'的十六进制表示0x8521
            System. out .println( "charData5=" + charData5 );
            System. out .println( "charData6=" + charData6 );
            
             boolean booleanData0 = false ;
             // 错误写法,java的布尔类型只能是true或者false,不能使用0或非0来替换
             // boolean booleanEData1 = 2;
             // boolean booleanErrorData2 = 0;
      }
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值