Jak to przerwać

0
import java.util.Scanner;

public class Zadanie4 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("Podaj nr konta: ");
        int nr = scanner.nextInt();
        System.out.println("wprowadziles nr = " + nr);
        int dobryNr = 1234;
        if (nr == 1234) {
            System.out.println("Dobry nr konta, wprowadz pin: ");
        } if (nr <1234 || nr>1234 ){
            System.out.println("zły nr");
**            // ---- TUTAJ CHCE DODAC break; ale nie dziala ;d**
            }
        int pin = scanner.nextInt();
        int dobryPin = 4321;
        System.out.println("Wprowadziłeś pin: " + pin);
        if (pin == 4321) {
            System.out.println("dobry pin, logowanie");
        } else {
            System.out.println("zły pin");
        }
    }
}

Jesli uzytkownik poda cos zle chce przerwac program, co jesli zle w tym break =/

0

Nie używaj break, jeżeli nie jesteś w switchu ani w pętli. Użyj natomiast System.exit(0); a w tym wypadku return;

3

użyj return i przy okazji zmień kolejność ifów:

if (nr != 1234) {
    System.out.println("zły nr");
    return;
}
System.out.println("Dobry nr konta, wprowadz pin: ");

Ogólnie lepiej na początek sprawdzić wszystkie niepoprawne warunki (czyli przeprowadzić walidację) a potem pisać kod tylko dla poprawnych wartości

0

@up dzieki działa.
Myślałem że return służy tylko do zwracania danych z metod, jak rozumieć to return?
i return i System.exit działa czemu lepsze return w tym wypadku?

0
ZoooL napisał(a):

Myślałem że return służy tylko do zwracania danych z metod, jak rozumieć to return?
i return i System.exit działa czemu lepsze return w tym wypadku?

Return zwraca sterowanie, a System.exit(0) kończy działanie programu.

0

Return oznacza wyjście z aktualnej funkcji i zwrócenie wartości. Jeśli funkcja nic nie zwraca to po prostu wyjdziesz z funkcji.
Wyście z main kończy program.
System.exit zabija jvm i generalnie trzeba używać przezornie.

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