Bedingung zwei mal überprüfen

Diskutiere Bedingung zwei mal überprüfen im Allgemeine Java-Themen Bereich.
X

xheinz

Hey! Ich habe diesen Code hier:
Code:
do
        {
            //Zufallszahlen zwischen 1 und 5
            Random zufallRandom = new Random();
            int x = 0 + zufallRandom.nextInt(4 + 1);
            System.out.println(pj[x].vorname +" angelt grade");
            if(See.catchFish(false) == true) {
                System.out.println("Wassertier gefangen!!");
            }
            else {
                System.out.println("Müll gefangen!");
            }
            
            System.out.print("Weiter? ");
            ein = reader.next();
            
        } while (ein.equals("j"));
Falls See.cathFish(false) == true, wurde ein Wassertier gefangen. Wenn ein Angler nun zwei mal ein Wassertier gefangen hat muss er bezahlen. Wie kann ich diese Bedingung zwei mal überprüfen? MfG
 
J

JustNobody

Du kannst ja einen Zähler einbauen. Immer wenn ein Tier gefangen wurde, erhöhst du den Zähler. Und den Zähler kannst du dann auswerten.

Oder da du nur bis zwei gehen willst, dann wäre die Logik ja, dass ein Fisch frei ist. Also kannst du eine boolean Variable nutzen: gotFreeFish oder so. Wenn ein Fisch gefangen wurde, prüfst du, ob die Variable false ist. Wenn sie false ist, setzt du sie auf true. Ist sie schon true, dann muss der Angler bezahlen ...

Zwei Optionen, erste ist universeller, da auch mehr Fische frei sein können ...
 
X

xheinz

Code:
    int zaehler = 0;
        do
        {
            //Zufallszahlen zwischen 1 und 5
            Random zufallRandom = new Random();
            int x = 0 + zufallRandom.nextInt(4 + 1);
    
            System.out.println(pj[x].vorname +" angelt grade");
            if(See.catchFish(false) == true) {
                System.out.println("Wassertier gefangen!!");
                zaehler++;
            }
            else {
                System.out.println("Müll gefangen!");
            }
            
            System.out.println(zaehler);
            System.out.print("Weiter? ");
            ein = reader.next();
            
        } while (ein.equals("j"));
Ich habe den Zähler nun so eingebaut. Jedoch zählt er jetzt für alle Angler zusammen. Ich wollte jedoch, dass es nur für den jeweiligen Angler, welcher grade angelt zählt und speichert. Ich hoffe du kannst mir da weiterhelfen :)
 
J

JustNobody

Dann musst du für jeden Angler einen Zähler haben.

Du kannst das separat machen oder du steckst es mit in die Klasse. So dass du neben vorname auch ein Feld gefangeneFische hast oder so.
 
Thema: 

Bedingung zwei mal überprüfen

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben