Java基础之类型转换

一、将占用存储空间小的类型转换为占用存储空间较大的数据类型时,则作自动类型转换(隐式类型转换),反之必须做强制类型转换(显式转换)。

     1.1 小转大——自动类型转换。

例1:

输入

	float number1 = 45f ;
	int number2 = 152;
	System.out.println(number1 + number2);
	
程序输出
奇数
197.0
   
隐式类型转换规则

            

操作数1的数据类型操作数2的数据类型转换后的数据类型
byte、short、charintint
byte、short、char、intlonglong
byte、short、char、int、longfloatfloat
byte、short、char、int、long、floatdoubledouble

例2:

输入:

        byte mybyte = 127;
	int myint =150;
	char mychar = 10;
	float myfloat = 452.12f;
	double mydouble = 45.45646;
	System.out.println("127+452.12 = "+(mybyte + myfloat));
	System.out.println("127*150 = "+mybyte + myint);
	System.out.println("10/127 = " +mybyte/mychar);
	System.out.println("45.46546+10 = "+(mydouble + mychar));
程序输出结果如下:


127+452.12 = 579.12
127*150 = 127150
127/10 = 12
45.46546+10 = 55.45646

      1.2 、大转小——强制类型转换。

当把高精度的变量的值赋给低精度的变量时,必须使用显示类型转换运算(强制类型转换)。与方法格式:(类型名)要转换的值

输入:

        int a = (int)45.23;
	long y = (long)456.6F;
	int b = (int)'d';
	short s = 516;
	byte b1 = (byte)s;
	System.out.println("a = " +a);
	System.out.println("y = "+y);
	System.out.println("b = "+b);
	System.out.println("b1 = "+b1);

程序输出如下:

a = 45
y = 456
b = 100
b1 = 4
注意:当把一个证书赋值给一个byte、short、int、long型变量时,不可超出这些变量的取值范围,否则就会发生数据溢出。得到的就 是错误的数据。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值