"Ciao, Amico!"
"Oggi ti parlerò di alcune cose interessanti in Java."
" Infinito ".
In Java, il tipo double ha valori speciali per infinito positivo e infinito negativo . Un numero positivo diviso per 0,0 produce infinito positivo e un numero negativo — infinito negativo .
Questi concetti sono rappresentati da speciali doppie costanti:
Codice | Descrizione |
---|---|
|
Infinito positivo |
|
Infinito negativo |
"E funziona davvero?"
"Sì. Guarda questo:"
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
"Funziona davvero. E se abbiamo ambiguità? Ad esempio, se sottraiamo infinito da infinito?"
"Per questo, Java ha un altro concetto: Not-a-Number ( NaN )."
"È usato in varie situazioni:"
1) La stringa viene convertita in un numero, ma contiene lettere. Il risultato è NaN.
2) Infinito meno infinito. Il risultato è NaN.
3) Molte altre situazioni in cui ci aspettiamo un numero, ma finiamo con qualcosa di indefinito.
"Allora, quali operazioni puoi eseguire con Infinity e NaN?"
"Con NaN, è molto semplice. Qualsiasi operazione che coinvolga NaN si traduce in NaN."
"E con l'infinito, puoi fare quanto segue:"
Espressione | Risultato |
---|---|
|
0 |
|
±Infinito |
|
±Infinito |
|
Infinito |
|
NaN |
|
NaN |
|
NaN |
|
NaN |
"Ha senso. Grazie, Rishi."
GO TO FULL VERSION