
„Здрасти, Амиго!“
„Днес ще ви разкажа за някои интересни неща в Java.“
" Безкрайност ".
В Java двойният тип има специални стойности за положителна безкрайност и отрицателна безкрайност . Положително число, разделено на 0,0, дава положителна безкрайност , а отрицателно число — отрицателна безкрайност .
Тези понятия са представени от специални двойни константи:
Код | Описание |
---|---|
|
Положителна безкрайност |
|
Отрицателна безкрайност |
— И това наистина работи?
"Да. Вижте това:"
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
"Наистина работи. А ако имаме неяснота? Например, ако извадим безкрайност от безкрайност?"
„За това Java има друга концепция: Not-a-Number ( NaN ).“
„Използва се в различни ситуации:“
1) Низът се преобразува в число, но съдържа букви. Резултатът е NaN.
2) Безкрайност минус безкрайност. Резултатът е NaN.
3) Много други ситуации, в които очакваме число, но в крайна сметка получаваме нещо недефинирано.
„И така, Howви операции можете да извършвате с Infinity и NaN?“
„С NaN е много просто. Всяка операция, включваща NaN, води до NaN.“
„И с безкрайността можете да направите следното:“
Изразяване | Резултат |
---|---|
|
0 |
|
± Безкрайност |
|
± Безкрайност |
|
безкрайност |
|
NaN |
|
NaN |
|
NaN |
|
NaN |
„Това има смисъл. Благодаря ти, Риши.“
GO TO FULL VERSION