内置数据类型
-
数据类型 默认值 字节 最小值 最大值 byte 0 8 -128(-2^7) 127(2^7-1) short 0 16 -32768(-2^15) 32767(2^15 - 1) int 0 32 (-2^31) (2^31 - 1) long 0L 64 (-2^63) (2^63 -1) float 0.0f 32 (-2^31) (2^31 - 1) double 0.0d 64 (-2^63) (2^63 -1) char 'u0000' 16 -32768(-2^15) 32767(2^15 - 1) String (or any object) null * boolean false *
变量
变量是存储数据值的容器(内存相同)。
声明变量:
// 数据类型 变量名称 = 初始值;
type variable = value;
eg:
String name = "川川帅哥";
int h = 15;
double d1 = 123.3;
类型转换
自动类型转换
类型范围小的变量可以赋值给范围大的类型。
表达式自动类型转换
小范围的类型自动转换成大范围的数据类型;
最终类型由表达式的最大类型决定;
表达式中的 byte、short、char直接转成int计算。
byte a=10;
byte b=20;
int c=a+b;//byte c=a+b(错误)
强制类型转换
数据类型 变量2 = (数据类型)变量1(or数据);
int a=20;
byte b =(byte)a;//b=20
a 00000000 00000000 00000000 00010100
b 00010100
//强制类型转换可能会造成数据溢出
int a=1500;
byte b =(byte)a;//b=-36
a 00000000 00000000 00000101 11011100
b 11011100
//浮点型数据强制转整型,直接去掉小数
double a=11.5
byte b=(byte)a;//b=11