2 개의 nullable double, 예상 값 및 실제 값이 있습니다 (value 및 valueExpected라고 함). 백분율은 100 * (value/valueExpected)를 사용하여 찾습니다. 그러나 valueExpected가 0이면 NaN을 반환합니다. 지금까지 좋은 모든 것.C#에서 Nullable Double NaN 비교
이제 NaN인지 확인하기 위해 값을 확인해야 할 경우 어떻게해야합니까? (때는 isNaN는 null이 허용되지 않는 변수와 함께 작동)
if (!Double.IsNaN(myDouble))
을하지만이 널 (NULL) 값으로 작동하지 않습니다 일반적으로 하나가 사용할 수 있습니다. 나는 체크 (valueExpected == 0)를하기 위해 코드를 변경했지만 여전히 궁금하다. nullable NaN을 검사 할 방법이 있는가?
편집 : 코드가 작동하지 않는다고 말하면 컴파일되지 않습니다. 먼저 null에 대한 테스트가 작동하지 않습니다.
은 아마 저를 방지하기 바로 비주얼 스튜디오의 경우 이중
으로이 NaN의 경우는 true와 false를 돌려줍니다. 나는 다음과 같은 것을 가지고있다 : ' if (myDouble! = null) { if (! Double.IsNaN (myDouble)) { // Do stuff! } } ' 하지만이 코드는 컴파일되지 않고 'is null'체크가 된 후에도 IsNaN을 사용하는 것을 좋아하지 않습니다. –
변수 이름 "d"다음에 ".Value"가 보입니까? d.Value는 double이며 꼭 컴파일해야합니다. –
내 코드가 잘 컴파일됩니다. 추가 된 "is null"검사는 아무 것도 변경하지 않습니다. 코드가 여전히 올바르지 않습니다. 'myDouble'은'Nullable'이고'IsNaN()'은'double'을 기대합니다. 당신은 ** 반드시 ** .Value' 속성을 사용해야합니다. –