"Hej, Amigo!"
"Idag ska jag berätta om några intressanta saker i Java."
" Infinity ."
I Java har dubbeltypen speciella värden för positiv oändlighet och negativ oändlighet . Ett positivt tal dividerat med 0,0 ger positiv oändlighet och ett negativt tal - negativ oändlighet .
Dessa begrepp representeras av speciella dubbla konstanter:
Koda | Beskrivning |
---|---|
|
Positiv oändlighet |
|
Negativ oändlighet |
"Och det fungerar verkligen?"
"Ja. Titta på det här:"
double inf = Double.POSITIVE_INFINITY;
System.out.println(inf); // Infinity
System.out.println(inf + 1); // Infinity+1 == Infinity
System.out.println(inf + 10); // Infinity+10 == Infinity
System.out.println(inf * -1); // Equal to negative infinity
Double.NEGATIVE_INFINITY
Infinity
Infinity
Infinity
-Infinity
"Det fungerar verkligen. Och om vi har tvetydighet? Till exempel om vi subtraherar oändlighet från oändlighet?"
"För detta har Java ett annat koncept: Not-a-Number ( NaN )."
"Det används i olika situationer:"
1) Strängen konverteras till ett tal, men den innehåller bokstäver. Resultatet är NaN.
2) Oändlighet minus oändlighet. Resultatet är NaN.
3) Många andra situationer där vi förväntar oss ett antal, men vi slutar med något odefinierat.
"Så, vilka operationer kan du utföra med Infinity och NaN?"
"Med NaN är det väldigt enkelt. Alla operationer som involverar NaN resulterar i NaN."
"Och med oändligheten kan du göra följande:"
Uttryck | Resultat |
---|---|
|
0 |
|
±Oändlighet |
|
±Oändlighet |
|
Oändlighet |
|
NaN |
|
NaN |
|
NaN |
|
NaN |
"Det är vettigt. Tack, Rishi."
GO TO FULL VERSION