奋斗第九天
##类型转换
package exercise;
public class exercise {
public static void main(String[] args) {
int i=128;
double b=i;//内存溢出
//强制转换 (类型) 变量名 高 -> 低
// 自动转换 低 -> 高
System.out.println(i);
System.out.println(b);
/*
注意点:
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干类型
3.把高容量转换为低容量时,强制转换
4.转换时可能存在内存溢出,或者精度问题!
*/
System.out.println("==================");
System.out.println((int)28.7);//28
System.out.println((int)-45.89f);//-45
System.out.println("====================");
char c='a';
int d=c+1;
System.out.println(d);
System.out.println((char)d);
System.out.println("====================");
//操作比较大的数的时候,注意溢出问题。
//JDK7新特性,数字之间可以用下划线分割。
int money=1000_000_000;
int years=20;
int total=money*years;//-1474836480,计算的时候溢出了
long total1=money*years;//默认是int,转换之前已经存在问题了。
System.out.println(total1);
long total2=money*(long)years;//先把一个数转换为long.
System.out.println((total2));
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?