[Java] działanie pętli while

0

Witam,

moj eclipse bardzo dziwnie sie zachowuje
mam taki oto kawałek kodu:

		int d = 0;
		while (d == 0)
		{
			String dzialanie = JOptionPane.showInputDialog("Wybierz numer działania \n" +
				"1. dodawanie\n" +
				"2. odejmowanie\n" +
				"3. mnożenie\n" +
				"4. dzielenie");
			try
			{
				d = Integer.parseInt(dzialanie);	
			}
			catch (NumberFormatException e)
			{
				continue;
			}
			if (d >= 5)
			{
				JOptionPane.showMessageDialog(null, "d >= 5");
				continue;
			}
			else if (d <= 0)
			{
				JOptionPane.showMessageDialog(null, "d <= 0");
				continue;
			}

prosty jak budowa cepa...
jednak coś jest nie tak
jesli w okniedialogowym wpisuje zero = Java wyswietla komunikat MessageDialog z odpowiedniego if'a po czym wykonuje "continue" i wraca do okna InputDialog.

jednak kiedy wpiszę jakąkolwiek inną liczbę z poza zakresu 1-4 wtedy po wypisaniu komunikatu MessageDialog, wychodzi z pętli i wykonuje następne działanie które znajduje się w dalszej części kodu... czemu?

komunikaty MessageDialog specjalnie założyłem bo coś mi nie grało w działaniu programu - komunikat pokazuje mi, że kod wchodzi do prawidłowego if'a i się wykonuje, ale z jakiegoś powodu leci dalej, zupełnie pomijając "continue"...

co może być tego przyczyną?

Pozdrawiam,
tito

0

Jak wpisujesz jakaś liczbę to zostaje przypisana do zmiennej d, więc d !=0 dlatego pętla nie działa, jak zamiast d==0 dasz po prostu true będzie działało.
Pozdrawiam

0

O ja glupi jeden....
dopiero teraz mnie olśniło :)

przecież d jest warunkiem mojej pętli...

tak to jest jak człowiek za dużo czasu spędza przy komputerze :)

0

Zdarza się każdemu

1 użytkowników online, w tym zalogowanych: 0, gości: 1