Java中数据类型的转换

Java中不同的数据类型能够进行混合运算,例如整数1可以和浮点数0.5进行相加,要让最后的结果显示为浮点数,就要使用浮点数据类型,如果用整数型来定义结果,那么1+0.5所显示的结果仍然为整数,但要注意,这种自动运算只能由范围小转换到范围大的,称为自动类型转换

public class Demo{
	public static void main(String []args){
		int oldNum=1;
		double oldNum2=0.5;
		double newNum=oldNum+oldNum2;
		System.out.println(newNum);
	}
}

这时输出的结果即为1.5,但是不能将newNum前的double改为int,因为double占8字节空间,int只占4字节,,你没法让大象自己钻到冰箱里。

自动类型转换又叫做隐式转换,从小到大的依次转换顺序为:
byte→short→char→int→long→float→double

除了自动类型转换外,还有强制类型转换,正是用来应付自动转换无法转换过去的情况,让较大的数据类型转换成较小的,通用格式如下

(要转换成的数据类型)被转换的数。 例如
public class Demo2{
	public static void main(String []args){
		double a=1.123
		int b;
		b=(int)a;	//将double型变量a转换成了int型
		System.out.println(b);
	}
}

最终输出的b的值为1,显然,强制转换会导致数值失去一定的精确度,所以在没必要的时候尽量不使用强制类型转换。
另外,不是所以类型都能互相强制转换,上例的double可以转换成int是因为本质上他们的值都是数字,而boolean就不能与数字值互相转换,因为boolean的值只有true和false,说白了就是真假的判断,怎么能让他强制变成数字呢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值