java 数据类型转换
一、基本数据类型
java的基本数据类型分为八种
- 整数型(byte short int long)
- 浮点型(double float)
- 布尔型(boolean)
- 字符型(char)
二、数据类型大小
类型从小到大依次为: byte sort int long float double (char)
三、基本类型转换方式
3.1自动(隐式)转换
从小类型到大类型可以实现自动类型转换
eg:
double a=1;\\1默认类型为int类型
或者
int a=1;
double b=a;
此处将int类型赋值给double类型,可以直接赋值,因为小类型转换成大类型,会自动转换成double并赋值给b
3.2强制类型转换
从大类型到小类型,需要进行强制类型转换
eg:
double a=1.2561;
int b=(int)a;
这里就需要进行强制转换
四 关于byte、short、char赋值与运算的强转规则
4.1 不参与运算,整数直接量可以直接赋值给byte,short,char,不需要强转。
eg:
byte d=1;
short f=2;
char g=3;
这些都是可以的
但是如果写成这样:
int c=1;
byte d=c;//就会报错,需要强制转换。
4.2 byte,short,char型变量参与运算时,需要强转
eg:
byte bb=3;
byte bbb=4;
byte bbbb= (byte) (bb+bbb);
参与运算后,bb+bbb和的值默认为int类型,需要强制转换成byte类型再赋值给byte类型变量bbbb