float f = 3.4语句正确吗?

[b][size=x-large]float f = 3.4语句正确吗[/size]]?[/b]

回答这个问题,得首先知道[u]Java类型转换[/u]和[u]Java数值常量默认类型[/u]相关知识。

1.[size=large][b]Java类型转换[/b][/size]

Java中不同类型之间的变量赋值时,需要先进行类型转换,才能进行赋值。Java类型转换分为自动转换和强制转换两种。

基本类型间的自动类型转换需要满足以下条件:

(1).转换双方的类型必须兼容,例如int和long类型就是兼容的,而int和boolean就是不兼容的。

(2).只能是"窄类型"向"宽类型"转换,也就是目标类型的数据表示范围要比源类型的数据表示范围要大。

             
byte-->short-->
|-->int-->long-->float-->double
char-->



按照箭头可以实现自动类型转换,而如果是相反方向间的类型转换则需要强制类型转换.

2.[size=large][b]数值常量默认类型[/b][/size]

(1).[u]Java中整型常量数值的默认类型是int类型[/u],如果需要声明long类型的常量 ,需要在数值加上'l'或者'L'.
例如:int i = 3;
long l = 3L;

(2).[u]Java中的浮点型常量数值默认是double类型[/u],如果要声明一个数值为float型,则需要在数值后面加上'f'或者'F'.
例如:double d = 3.14;
float f = 3.14f;

3.[size=large][b]float f = 3.4;语句是错误的[/b[/size]]
3.4数值常量默认情况下是double类型,如果赋值给f,那么将由double转换成float类型,由前面的知识可以知道是不能自动类型转换的,所以可以将float f = 3.4修改成:

(1)float f = 3.4f;
(2)float f = (float)3.4;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值