Этот код работает (С# 3)
double d;
if(d == (double)(int)d) ...;
- Есть ли лучший способ сделать это?
- По посторонним причинам я хочу избежать двойного броска; какие хорошие способы существуют, кроме этого? (даже если они не так хороши)
Примечание. Несколько человек указали на (важную) точку, что == часто является проблематичным исправлением с плавающей запятой. В этом случае я ожидаю значения в диапазоне от 0 до нескольких сотен, и они должны быть целыми (не ints являются ошибками), поэтому, если эти точки "не должны" быть проблемой для меня.