如果我有这些常量1 + 2.3
,那么(float)1 + 2.3
和此1f + 2.3
之间有什么区别?
答案 0 :(得分:2)
所以,让我们看看一些案例:
1 + 2.3
,这是一个整数加一个双。1f + 2.3
,这是一个浮点加一个双倍。1. + 2.3
,这是双加双。在所有这三种情况中,第一个参数已经或者将被提升为双精度。此外,这些表达式的结果将始终是双倍。
答案 1 :(得分:1)
当你写1.f
时,你会在内存中创建一个浮点数。
当你写(float)1
时,你在内存中创建一个整数,但是这个数字将被解释为表达式(强制转换)中的浮点数。