`
spring5365
  • 浏览: 71435 次
  • 性别: Icon_minigender_1
  • 来自: 钓鱼岛
社区版块
存档分类
最新评论

float f = 3.4是否正确

F# 
阅读更多
笔试时经常会出现的一个问题,float型float f=3.4是否正确

答案:不正确。
原因:精度不准确,应该用强制类型转换,如下所示:float f=(float)3.4 或float f = 3.4f

在java里面,没小数点的默认是int,有小数点的默认是 double;

编译器可以自动向上转型,如int 转成 long 系统自动转换没有问题,因为后者精度更高
double 转成 float 就不能自动做了,所以后面的加上个 f;
分享到:
评论

相关推荐

    java面试题(题库全).doc

    4. float 型 float f=3.4 是否正确? 不正确;精度不准确,应该用强制类型转换,如float f=(float)3.4。 5. 语句 float f=1.3;编译能否通过? 不能;应该用强制类型转换,如float f=(float)1.3。 6. short s1 =...

    java笔试、面试基础题(含答案)

    float型float f=3.4是否正确?** 不正确。3.4默认是双精度浮点数(double),而`float`类型的变量需要显式地进行类型转换或者指定后缀`F`或`f`,例如`float f = (float)3.4;` 或 `float f = 3.4f;`。 **5. 语句float...

    java面试题,从基础到框架再到设计

    4. float 型 float f=3.4 是否正确? 答:不正确;精度不准确,应该用强制类型转换,如下所示:float f=(float)3.4。 5. 语句 float f=1.3;编译能否通过? 答:不能;应该用强制类型转换,如下所示:float f=...

    java面试基础整理

    是不正确的,需要强制类型转换 float f =(float)3.4; 或者写成 float f =3.4F;。 * short s1 = 1; s1 = s1 + 1;需要强制类型转换,而 short s1 = 1; s1 += 1;可以正确编译。 * Java 中没有 goto 语句,但是 goto 是 ...

    java开发人员常见的面试题

    float型 float f = 3.4 是否正确?** `float f = 3.4;` 这样赋值是不正确的,因为 `3.4` 是一个双精度浮点数(double),而 `f` 是一个单精度浮点数(float)。正确的做法是使用强制类型转换:`float f = (float)3.4;` ...

    2023年最新:BAT大厂-java经典必考面试题

    是不正确的,因为 3.4 是双精度数,需要强制类型转换 float f =(float)3.4; 或者写成 float f =3.4F;。 在 Java 中,short s1 = 1; s1 = s1 + 1; 需要强制转换类型才能赋值给 short 型,而 short s1 = 1; s1 += 1;...

    j2me程序员笔试题目

    5. **float f=3.4 是否正确**:在Java中,直接赋值3.4给float是不正确的,因为3.4是double类型的常量,需要转换为float,正确写法是`float f = 3.4f`或`float f = (float) 3.4`。 6. **判断两个圆是否相交**:计算...

    2018最新BAT-java经典必考面试题

    float f = 3.4 是否正确? - **结论**: 不正确。 - **原因**: `3.4`是一个双精度数(double),直接赋值给`float`会导致类型不匹配,因为双精度数比浮点数能表示更大的范围和更高的精度。 - **解决方法**: - 使用...

    Java面试大全

    float型 float f = 3.4 是否正确?** 不正确。因为3.4默认为双精度浮点数(double),需要显式地转换为float类型。正确的做法是:`float f = (float)3.4;` 或者 `float f = 3.4F;`。 **5. 语句 float f = 1.3;编译...

    9、最新BAT java经典必考面试题(赠送)1

    正确的做法是使用强制类型转换`float f = (float)3.4;` 或 `float f = 3.4f;`。 5. 短整型变量的运算: - `short s1 = 1; s1 = s1 + 1;` 会报错,因为1被视为int类型,加法运算结果也是int,需要显式转换,如 `s1 ...

    95道Java面试题全集含答案.docx

    3.4 是双精度数,将双精度型(double)赋值给浮点型(float)属于下转型(down-casting)会造成精度损失,因此需要强制类型转换 float f =(float)3.4; 或者写成 float f =3.4F;。 short s1 = 1; s1 = s1 + 1;是否...

    Java基础问答题.doc

    - `float f=3.4` 不正确,因为3.4是`double`类型,需要显式转换:`float f=(float)3.4` 或 `float f=3.4F`。 4. **短路操作符**: - `short s1 = 1; s1 = s1 + 1;` 错误,因为`s1+1`的结果是`int`类型,需要转换...

    最新Java面试题及答案整理.docx

    是不正确的,因为3.4是双精度数,将双精度型(double)赋值给浮点型(float)属于下转型(down-casting)会造成精度损失,因此需要强制类型转换float f =(float)3.4; 或者写成float f =3.4F;。 五、短整型赋值 ...

    java面试题

    4. **float型float f=3.4是否正确?** 不正确。3.4默认为双精度浮点数(double),赋值给`float`类型的变量时,需要进行显式类型转换,如`float f = (float)3.4;`。 5. **语句float f=1.3;编译能否通过?** 不能...

    java技术知识

    #### 五、float f = 3.4 是否正确? - **知识点**:这种赋值方式是不正确的。因为3.4是一个`double`类型的值,而`float`类型的变量`f`需要赋一个`float`类型的值。为了解决这个问题,可以通过两种方式实现:一是...

    javaWEB面试题大全(机会只有一次,千万别错了)

    4. **float型float f=3.4是否正确?** - 不正确。因为3.4默认为double类型,需要显式转换为float类型,如`float f = (float)3.4;`。 5. **语句float f=1.3;编译能否通过?** - 不能。同样,1.3默认为double类型,...

Global site tag (gtag.js) - Google Analytics