NaN, Infinity - 1

"Hei, Amigo!"

"I dag skal jeg fortelle deg om noen interessante ting i Java."

" Uendelig ."

I Java har den doble typen spesielle verdier for positiv uendelig og negativ uendelig . Et positivt tall delt på 0,0 gir positiv uendelighet , og et negativt tall – negativ uendelighet .

Disse konseptene er representert av spesielle doble konstanter:

Kode Beskrivelse
public static final double POSITIVE_INFINITY = 1.0 / 0.0;
Positiv uendelighet
public static final double NEGATIVE_INFINITY = -1.0 / 0.0;
Negativ uendelighet

"Og det fungerer virkelig?"

"Ja. Se på dette:"

Kode
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
Skjermutgang:
Infinity
Infinity
Infinity
-Infinity

"Det fungerer virkelig. Og hvis vi har tvetydighet? For eksempel hvis vi trekker uendelig fra uendelig?"

"For dette har Java et annet konsept: Not-a-Number ( NaN )."

"Det brukes i forskjellige situasjoner:"

1)  Strengen blir konvertert til et tall, men den inneholder bokstaver. Resultatet er NaN.

2) Uendelig minus uendelig. Resultatet er NaN.

3) Mange andre situasjoner hvor vi forventer et tall, men vi ender opp med noe udefinert.

"Så, hvilke operasjoner kan du utføre med Infinity og NaN?"

"Med NaN er det veldig enkelt. Enhver operasjon som involverer NaN resulterer i NaN."

"Og med uendelig kan du gjøre følgende:"

Uttrykk Resultat
n ÷ ±Infinity
0
±Infinity × ±Infinity
±Uendelig
±(something other than zero) ÷ 0
±Uendelig
Infinity + Infinity
evighet
±0 ÷ ±0
NaN
Infinity - Infinity
NaN
±Infinity ÷ ±Infinity
NaN
±Infinity × 0
NaN

"Det gir mening. Takk, Rishi."