返回类型(长+长)

Seg*_*ult 2 java

这似乎是一个愚蠢的问题,但我找不到答案,或者至少我不知道如何在谷歌上制定它.

当我们在Java中添加两个字节时,结果是一个int.

但是两个长,或长和一个int怎么样?对于double和float也是同样的问题.在所有这些转换之间我有点迷失.

ken*_*ytm 16

long.这符合§5.6.2二元数字促销,第2项:

  • 如果任一操作数是类型double,则另一个操作数转换为double.
  • 否则,如果任一操作数是类型float,则另一个操作数转换为float.
  • 否则,如果任一操作数是类型long,则另一个操作数转换为long.
  • 否则,两个操作数都将转换为类型int.

由于最后一条规则,你int在添加两个bytes 时得到一个.

  • 要添加到KennyTM,如果你添加一个double并浮动在一起,你得到一个double(如第一个项目中所述) (2认同)