强制转换

public class Domo04 {
public static void main(String[] args) {
//类型转换 由于java是强类型语言,所以要进行有些运算的时候的,需要用到类型转换
//低》》》》》》》》》高
//byte short,char ->int long float double
//运算中,不同类型的数据先转化为同一类型,然后进行运算
int i=128;
System.out.println(i);
//byte b=(byte)i;//内存溢出
//System.out.println(b);
//强制转换 (类型)变量名 高到低需要强制转换,,,低到高自动转换
double c=i;
System.out.println(c);
/*
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.再把高容量转换到低容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度问题
*/
System.out.println("======================");
System.out.println((int) 23.8);
System.out.println((int)-40.84f);
System.out.println("======================");
char w='a';
int e=w+1;
System.out.println(e);
System.out.println((char)e);
//转换的e等于b,a=97,e是98,转换的unicoude表,对应b
System.out.println("=============================");
//操作比较大的数的时候,注意一出问题
//jdk新特性,数字之间可以用下划线分割
int money= 10_10000_000;
int year=20;
// int tatal =money*year;//=-143333,计算结果的时候溢出也需要强制转换
// long tatal2=money*year;//默认是int,先结果结果转换long,转换之前出现问题
long tata123=money*((long)year);
System.out.println(tata123);


}
}
posted @ 2021-08-07 14:43  gfjf  阅读(306)  评论(0)    收藏  举报