代码中看看:Ctrl + 鼠标左键对准需要查看的类进入该类的源码
运行结果:
强制转换 (类型)变量名 高——>低
自动转换 低——>高
运行结果:
98
b
强制类型转换格式:
把int型i转换成byte型
已转变的类型 新的变量名(任取)=(要转换的类型) 要转变的的变量名;
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,强制转换
4.转换时可能存在内存溢出,或者精度问题
写点代码:
package com.vis_yang.demo; public class Demo06 { public static void main(String[] args) { //操作较大的数时侯,注意溢出问题 //JDK7之后的新特性,大数字可以用下横线分割,方便书写与查看 int money= 10_0000_0000; int years=20; int total=money*years;//-1474836480 ,计算的时候溢出了,没有得到预期结果:20000000000,那我改成long long total1=money*years;//默认是int,依然得到-1474836480,说明转换之前就已经存在问题了 //强制转换试试看 long total2=(long)money*years; System.out.println(total); // -1474836480 System.out.println(total1);// -1474836480 System.out.println(total2);// 20000000000,强制转换类型有效 } }