Java数据类型

1、Java的基本数据类型只有8种分别是byteshortintlongfloatdoublecharboolean(注:String不是Java的基本数据类型)

数据类型 大小/位 可表示数据范围
 byte(字节)  8 -128~127 
short(短整型)   16 -32768~32767 
int(整型)   32  -21亿多~21亿多
 long(长整型) 64   -2^63~(2^63)-1
float (单精度)  32  -3.4E38~3.4E38
 double(双精度) 64   -1.7E308~1.7E308
 char(字符) 16  0~65535 
 boolean(布尔)  - true或false 

 

 

 

 

 

 

 

 

 

(附:long 和double都是64位。为什么double表示的范围大那么多呢?)

 

1.1、数据类型转换

  1.1.1、自动类型转换:小类型到大类型

  1.1.2、强制类型转换:大类型到小类型

             强转有可能会溢出或精度丢失

  1.1.3、数据类型从小到大的顺序为:byte => short(char)  => int => long => float => double 

 

1.2、赋值和运算

  1.2.1、整数直接量可以直接赋值给byte,short,char,但不能超出范围

char c = 97;//字面量可以直接给char赋值
//char类型形式为字符,实质是码int,保存一个整型。 //根据Unicode字符集编码,每个字符都有一个相对应的码

int a = 97;
//char cc = a;//编译出错,大类型转小类型要强制类型转换

 

  1.2.2、byte,short,char型数据参与运算时,先一律转换为int再运算

short b1 = 5;
short b2 = 6;
short b3 = (short)(b1+b2);
//这里的b1和b2运算时自动转为int型,所以必须强转为short型才能赋值给b3

 

  

  1.2.3、 赋值

    直接量超范围为编译错误,运算时超范围为溢出

long a = 1000000000*2*10L;
System.out.println(a); //200亿L

long b = 1000000000*3*10L;
System.out.println(b); //溢出了

long c = 1000000000L*3*10;
System.out.println(c); //300亿L
//使用long型进行大数值运算时,最好在第一个数后写上L
//说明该数字是long型,避免默认成整型运算
//注:长整型的直接量,需在数字后加L或l

 

  1.2.4、常用数据单位转换

    1G=1024M()

    1M=1024KB(千字节)

    1KB=1024B(字节)

    1B=8Bit()

 

  1.2.5、基本类型 “=” 号是对变量赋值,引用类型“=”号是让引用变量指向一个地址值

 

 阿里云服务器低至 1折86元/年

posted @ 2018-02-03 09:37  沁园Yann  阅读(190)  评论(0编辑  收藏  举报