Да!
Это одно и то же.
Существует без инструкции для прямого сравнения с плавающей запятой с целым числом, поэтому сначала оно приводит к float
.
Тем не менее:
Будьте осторожны: не означает, что преобразование int
в float
без потерь. Он все еще может потерять некоторую информацию, поэтому этот код:
(int)(float)integer == integer
не всегда оценивается в true
! (Попробуйте с помощью int.MaxValue
, чтобы увидеть. То же самое с double
/ long
.)