自动类型转换你忘记了吗?

2023-12-29 08:28:31

小类型自动向大类型转换,

多种类型进行运算,系统会将数据转换为容量最大的那种数据类型再运算

二条路径:

可以记为,byte,short,char运算时候都会转换为int再进行运算

char和byte以及short之间不会转换

-// 1、byte-》short-》int  
- //2、char-》int
- int num = 'a';//char -> int
  		double d = 66; //int -> double
  		System.out.println(num);//97
  		System.out.println(d1);//66.0

这三个只要参与运算就会自动转换为int!!!

byte b1 = 1;
	byte b2=2;
	short s1 = 1;
	//short s2 = b1 + s1;//报错, b2 + s1 => int
	int s2 = b1 + s1;//对 b2 + s1 => int

强制类型转换

int a=(int)1.9 /

10/4是2,提升精度--》10.0/4=2.5 因为int会舍弃小数,double d=10/4结果是2.0;int 2赋给double;

取模的本质:

余数的符号只与在前面哪个数的符号有关!

a % b=a-a/b*b -->10%-3 //结果是1 ,10-10 / -3 * -3-->=1 取模符号放在后面时候可能会出现这情况 ,小数取模要注意,会转为int --》a-int a/b*b,只要有小数参与,得到的值就是近视值 !

文章来源:https://blog.csdn.net/m0_64880608/article/details/135260979
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。