W Javie mogą wystąpić sytuacje, w których istnieje potrzeba powstrzymania się od „Nan”Wartości. Mówiąc dokładniej, zajmując się wartościami śmieci lub obliczeniami matematycznymi gromadzącymi niepotrzebną pamięcią. W takich przypadkach „NAN” w Javie jest bardzo pomocne w sprawdzaniu prawidłowego numeru i skutecznego zarządzania pamięcią.
Ten artykuł pokaże użycie i występowanie „NAN” w Javie.
Co to jest „Nan” w Javie?
"Nan (nie liczba)„W Javie to specjalna wartość zmiennoprzecinkowa odnosząca się do błędów. Zwykle odpowiada wyniku nieprawidłowych operacji. Na przykład dzielenie zeru przez zero, dzielenie liczby zmiennoprzecinkowej przez zero lub przyjmowanie pierwiastka kwadratowego liczby ujemnej itp.
Przykład 1: Operacje prowadzące do „NAN” w Javie
W tym przykładzie obliczenia powodujące „Nan„Wynik można wdrożyć:
Klasa publiczna nan
public static void main (string [] args)
System.na zewnątrz.println („zero po zero:” +0.0/0.0);
System.na zewnątrz.println („Mod by Zero:” +10.0 % 0);
System.na zewnątrz.println („pierwiastek kwadratowy -1:” + matematyka.sqrt (-1));
System.na zewnątrz.println („dziennik -1:” + matematyka.log (-1));
W powyższych wierszach kodu podziel zero przez zero, weź „mod”O zero i zwróć„pierwiastek kwadratowy" I "dziennik”Odpowiednio liczby ujemnej. Wszystkie te obliczenia prowadzą do „Nan" wynik.
Wyjście
W powyższym wyjściu można zauważyć, że wszystkie obliczenia dają „dają” „Nan", w rezultacie.
Przykład 2: Porównanie wartości „NAN” w Javie
W tym konkretnym przykładzie „Nan”Wartości odpowiadające różnym klasom można porównać. Przed przejściem do przykładu rozważ następujące punkty:
Teraz przejdźmy do następujących wierszy kodu:
klasa publiczna NAN2
public static void main (string [] args)
System.na zewnątrz.println (float.Nan != Float.Nan);
System.na zewnątrz.println (float.Nan == float.Nan);
System.na zewnątrz.println (float.Nan < Float.NaN);
System.na zewnątrz.println (float.Nan <= Float.NaN);
System.na zewnątrz.println (float.Nan> = float.Nan);
System.na zewnątrz.println (podwójne.Nan != Podwójne.Nan);
System.na zewnątrz.println (podwójne.Nan == podwójne.Nan);
System.na zewnątrz.println (podwójne.Nan> podwójne.Nan);
System.na zewnątrz.println (podwójne.Nan <= Double.NaN);
System.na zewnątrz.println (podwójne.Nan> = podwójny.Nan);
W tym fragmencie kodu określ „Platforma.Nan" I "Podwójnie.Nan„Dla stałych pola odpowiednio w obu klasach, aby dokonać porównań. Należy zauważyć, że porównanie jest dokonywane na podstawie omawianych określonych warunków i zwracany jest odpowiedni wynik logiczny.
Wyjście
W tym wyniku można przeanalizować, że tylko porównanie z „!=„Operator zwrócił wynik”PRAWDA”Odpowiednio w obu klasach.
Wniosek
"Nan (nie liczba)”W Javie zwykle odpowiada wyniku nieprawidłowych operacji, takich jak podzielenie zero przez zero, dzieląc liczbę zmiennoprzecinkową przez zero lub pobieranie pierwiastka kwadratowego liczby ujemnej itp. Ten blog omówił użycie i wdrożenie „Nan„W Javie.