Engineering is like Tetris. Succes disappears and errors accumulate.
Saved by the buoyancy of citrus
Toevallig heet het in javascript ook isNaN(), maar eigenlijk had je deze link moeten hebben:Cyphax schreef op vrijdag 04 maart 2005 @ 11:15:
Misschien lukt het beter met isNaN?
http://www.powermct.co.kr/teched/ecma/isnan.html
http://java.sun.com/j2se/.../lang/Double.html#isNaN()
Ik zocht eigenlijk gewoon op isNaN, ik had zo snel niet het onderscheid gemaakt... mijn foutMrBucket schreef op vrijdag 04 maart 2005 @ 11:48:
[...]
Toevallig heet het in javascript ook isNaN(), maar eigenlijk had je deze link moeten hebben:
http://java.sun.com/j2se/.../lang/Double.html#isNaN()
Saved by the buoyancy of citrus
Aangezien isNaN alleen op Doubles werkt en niet op doubles, zul je waarschijnlijk nog:
nodig hebben.
code:
1
2
3
4
| final Double dbl = new Double(test[i][j]);
if (dbl.isNaN()) {
test[i][j]=0.0;
} |
nodig hebben.
'Nae King! Nae quin! Nae Laird! Nae master! We willna' be fooled agin!'
Java is toch IEEE compliant? Dan kun je gewoon
Java:
doen.
1
| if( test[i][j] != test[i][j] ) ... |
Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein
Geldt dit alleen voor NaN's, dat (x == x) false oplevert, of ook voor bijv. infinity-waarden? Ik meen me te herinneren dat het een beetje een geklooi was, maar ik weet niet zeker of dit alleen op NaNs van toepassing was.MSalters schreef op vrijdag 04 maart 2005 @ 12:09:
Java is toch IEEE compliant? Dan kun je gewoonJava:doen.
1 if( test[i][j] != test[i][j] ) ...
Overigens heeft Double ook een static isNaN, dus je kunt voor een double d ook Double.isNaN(d) schrijven, dan hoef je geen nieuw object aan te maken.
--edit--
Uit de documentatie van Double.equals():
Volgens mij impliceert ((x == x) == false) idd dat x dan NaN is.If d1 and d2 both represent Double.NaN, then the equals method returns true, even though Double.NaN==Double.NaN has the value false.
If d1 represents +0.0 while d2 represents -0.0, or vice versa, the equal test has the value false, even though +0.0==-0.0 has the value true.
[ Voor 27% gewijzigd door MrBucket op 04-03-2005 12:30 ]
Uit de source van Java 1.4.2_06:
Java:
1
2
3
| static public boolean isNaN(double v) { return (v != v); } |
More than meets the eye
There is no I in TEAM... but there is ME
system specs
bedankt voor de hulp!
Ik heb het nu op kunnen lossen.
Ik had het eerst anders gedaan, door te kijken of het getal tussen -infinity en infinity lag, maar dit is beter.
Ik heb het nu op kunnen lossen.
Ik had het eerst anders gedaan, door te kijken of het getal tussen -infinity en infinity lag, maar dit is beter.
Engineering is like Tetris. Succes disappears and errors accumulate.
Pagina: 1