1.数据类型可以转换,当左右两边数据类型不一样的时候,将会发生数据类型转换。
分为两种。一种是自动类型转换(隐式转换),第二种是强制类型转换(显式转换)。
隐式转换:代码不需要特别处理。
数据范围从小到大,左边的数据范围总是要比右边大。
代码:
public class DemoDataType {
public static void main(String[] args) {
long num1 =100;
System.out.println(num1);
double num2 =2.5f;
System.out.println(num2);
float num3 =30l;
System.out.println(num3);
}
}
显式转换:
范围小的类型 范围小的数据 = (范围小的类型)原本范围大的数据
代码如下:
int num1 = (int) 100L;
System.out.println(num1);
int num2=(int)6000000000L;
System.out.println(num2); //产生数据溢出。int类型最大为1705032704
int num3 = (int)3.5;
System.out.println(num3; //舍弃小数部分。
char zifu1 ='A';
System.out.println(zifu1+1); //字符'A’被当做int类型,数值为65。
数据类型转换注意点:
1.一般不推荐强制转换,因为会产生精度损失,数据溢出。
2.Byte/Short/Char 在计算的时候,会优先被提升为int类型再进行计算。
3. boolean类型不能发生数值转换。
4.ASCII表:美国信息交换标准代码
Unicode表:万国码。