为什么long转float和float转long都需要强制转换

为什么long转float和float转long都需要强制转换

//定义一个float类型变量f,将变量l的值赋值给f,并输出f的值

    float f=(float)l;

    System.out.println("f="+f);

    //将float的值f,重新赋值给变量l,并输出l的值

    l=(long)f;

    System.out.println("l="+l);


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小班 2020-09-02 10:58:05

同学你好,1、将long转为float,是不需要强制转换,比如:

http://img1.sycdn.imooc.com//climg/5f4f09ce093338a305670214.jpg

因为float用科学计数法表示过后,他的存储空间比long类型范围更大,所以long转为float不需要强制转换。

2、float转long,由大范围转为小范围,所以需要强转。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师