gpt4 book ai didi

java - 为什么 SOPLN 中的输出转换为浮点型?

转载 作者:行者123 更新时间:2023-11-30 04:25:33 24 4
gpt4 key购买 nike

int x = 5;
System.out.println((x>5)?2.3:2); // OP-> 2.0
System.out.println((x==5)?10:20);// OP-> 10

为什么在第一种情况下,OP从2转换为2.0?

TIA!!

最佳答案

(x>5)?2.3:2 因为您返回的是 2.32

它们应该来自同一类型。 (因为返回类型应该相同)

由于 2.3 是 double,因此 2 会转换为 double。

如果您更改为:

(x>5)?1:2

那么输出将为2。由于两者都是整数,因此不需要进行强制转换。

if编写它看起来像这样:

if(x > 5) 
return 2.3
else
return 2

如果包含此代码的方法的返回类型是 int,您将收到错误。

但如果它是 double 的,那就没问题,因为 2 将被转换为 2.0

了解 this更多。

关于java - 为什么 SOPLN 中的输出转换为浮点型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15943122/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com