一附上Demo3,注释包含相关知识点
package com.dong.third;
public class TestP3 {
public static void main(String[] args) {
//测试自动类型转换和强制类型转换 本质上就是容量小的向容量大的类型进行转换
byte a = 122;//这个是特例 这个在编译的时候,都已经发生类型转换了
int b =1000;
long c =b; //自动类型转换
float d = b;
double f = b;
System.out.println(d);
//强制类型转换 会造成精度损失
int aa = (int)2.22; //结果值为 2 此时强制转换的时候 只会去整数值,不会取小数点以后的值
char bb = (char)99; //这个也是进行强制转换成由int类型转换成char类型
System.out.println(aa);
System.out.println(bb);
// 关于基本类型计算-溢出问题如下
int aaa=1000000000;
//int bbb=aaa*300;此时会出现溢出问题,解决办法如下:
long bbb = aaa*(long)300;//此时将表达式中的一个因子提前转换成long类型的,这样计算之后还是long类型的
System.out.println(bbb);
}
}