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