Co oznacza NaN w języku Java?

Mam program, który próbuje zmniejszyć double do żądanej liczby. Wyjście, które otrzymuję to NaN.

Co oznacza NaN w Javie?

 87
Author: TryinHard, 2010-04-11

10 answers

Zaczerpnięte z tej strony :

" NaN "oznacza" nie numer". "Nan" jest wytwarzany, jeśli zmiennoprzecinkowy operacja ma kilka parametrów wejściowych które powodują, że operacja wytwarza jakiś nieokreślony wynik. Na przykład, 0.0 podzielone przez 0.0 jest arytmetycznie niezdefiniowane. Biorąc pierwiastek kwadratowy z liczba ujemna jest również niezdefiniowana.

 132
Author: KennyDeriemaeker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-12-01 16:53:04

NaN oznacza "Nie liczbę" i jest w zasadzie reprezentacją specjalnej wartości zmiennoprzecinkowej w standardzie IEE 754 zmiennoprzecinkowym . Nan ogólnie oznacza, że wartość jest czymś, czego nie można wyrazić za pomocą poprawnej liczby zmiennoprzecinkowej.

Konwersja spowoduje otrzymanie tej wartości, gdy konwertowana wartość jest czymś innym, na przykład podczas konwersji łańcucha znaków, który nie reprezentuje liczby.

 14
Author: poke,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-12-27 10:22:04

NaN oznacza "nie liczbę" i jest wynikiem niezdefiniowanych operacji na liczbach zmiennoprzecinkowych, takich jak na przykład dzielenie zera przez zero. (Zauważ, że dzielenie niezerowej liczby przez zero jest również zwykle nieokreślone w matematyce, to nie daje NaN, ale dodatnią lub ujemną nieskończoność).

 11
Author: sepp2k,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-11 17:59:45

NaN oznacza " nie liczbę."Jest to specjalna wartość zmiennoprzecinkowa, która oznacza, że wynik operacji nie został zdefiniowany lub nie można go przedstawić jako liczbę rzeczywistą.

Zobacz tutaj aby uzyskać więcej wyjaśnień tej wartości.

 5
Author: Mike Daniels,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-11 17:59:57

NaN oznacza nie liczbę. Jest on używany do oznaczenia dowolnej wartości, która jest matematycznie niezdefiniowana. Jak dzielenie 0.0 przez 0.0. Więcej informacji można znaleźć tutaj: https://web.archive.org/web/20120819091816/http://www.concentric.net/~ttwang/tech/javafloat.htm

Opublikuj swój program tutaj, jeśli potrzebujesz więcej pomocy.

 5
Author: Prachi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-15 20:25:19

NaN = nie Liczba.

 4
Author: Fitzchak Yitzchaki,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-11 17:59:28

Oznacza nie liczbę. Jest powszechną reprezentacją niemożliwej wartości liczbowej w wielu językach programowania.

 4
Author: lbedogni,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-11 18:04:50

Nie jestem Javą, ale w JS i innych językach używam "Not a Number", co oznacza, że jakaś operacja spowodowała, że stała się niepoprawną liczbą.

 3
Author: Brian Mains,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-11 17:59:20

Dosłownie oznacza " nie liczbę."Podejrzewam, że coś jest nie tak z Twoim procesem konwersji.

Sprawdź sekcję Not a Number W to odniesienie

 3
Author: Chris Thompson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-11 17:59:28

Nieprawidłowa wartość zmiennoprzecinkowa (np. wynik dzielenia przez zero)

Http://en.wikipedia.org/wiki/NaN

 3
Author: Vladimir Dyuzhev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-04-11 17:59:40