Video: Week 1 2024
Overweeg dit voorbeeld als u betere omstandigheden in Java wilt schrijven. In Backgammon en andere dobbelspellen is rollen 3 en 5 niet hetzelfde als rollen 4 en 4, hoewel het totaal voor beide rollen 8 is. De volgende zet varieert, afhankelijk van of je dubbels draait.
Om de computer twee dobbelstenen te laten werpen, voer je myRandom uit. nextInt (6) + 1 twee keer. Vervolgens combineert u de twee rollen in een grotere, meer gecompliceerde if-instructie.
Dus om een Backgammon-spel te simuleren (en vele andere, meer praktische situaties), moet je voorwaarden combineren.
Als die1 + die2 gelijk is aan 8 en is die1 gelijk aan die2, …
U hebt dingen nodig zoals en en of - dingen die samen de omstandigheden kunnen bedraden. Java heeft operators om deze concepten te vertegenwoordigen.
Operatorsymbool | Betekenis | Voorbeeld |
---|---|---|
&& | en | 4 |
|| | of | leeftijd <4 || 8 |
! | niet | ! eachKidGetsTen |
Gecombineerde omstandigheden, zoals die in Tabel 10-1, kunnen enorm verwarrend zijn. Daarom moet je voorzichtig zijn wanneer je zulke dingen gebruikt. Hier volgt een korte uitleg van elk voorbeeld in de tabel:
-
4
De waarde van de leeftijdsvariabele is groter dan 4 en is kleiner dan 8. De getallen 5, 6, 7, 8, 9 … zijn allemaal groter dan 4. Maar van deze nummers zijn slechts 5, 6 en 7 minder dan 8. Dus alleen de nummers 5, 6 en 7 voldoen aan deze gecombineerde voorwaarde.
-
leeftijd <4 || 8
De waarde van de leeftijdsvariabele is kleiner dan 4 of is groter dan 8. Als u de voorwaarde of wilt maken, gebruikt u twee pijpsymbolen. Op veel Engelse toetsenborden vindt u het pijpsymbool direct boven de Enter-toets (dezelfde sleutel als de backslash, maar verschoven).
In deze gecombineerde conditie is de waarde van de leeftijdsvariabele minder dan 4 of groter dan 8. Als een getal bijvoorbeeld kleiner is dan 4, voldoet het nummer aan de voorwaarde. Getallen als 1, 2 en 3 zijn allemaal minder dan 4, dus deze getallen voldoen aan de gecombineerde voorwaarde.
Ook als een getal groter is dan 8, voldoet het nummer aan de gecombineerde voorwaarde. Nummers zoals 9, 10 en 11 zijn allemaal groter dan 8, dus deze getallen voldoen aan de voorwaarde.
-
! eachKidGetsTen
U kunt worden verward door het uitroepteken. Dat denk je misschien! eachKidGetsTen betekent: "Ja, elk kind krijgt tien. "Maar dat is niet wat deze uitdrukking betekent. Deze uitdrukking zegt: "De variabele eachKidGetsTen doet niet hebben de waarde true."In Java en andere programmeertalen betekent een uitroepteken negatief, voor op geen enkele manier, voor niet.
De waarde van een Booleaanse variabele is waar of onwaar. Omdat! betekent niet, de uitdrukkingen eachKidGetsTen en! eachKidGetsTen hebben tegengestelde waarden. Dus wanneer eachKidGetsTen waar is,! eachKidGetsTen is false (en omgekeerd).
Java's || operator is inbegrepen. Dit betekent dat je waar wordt wanneer het ding aan de linkerkant waar is, het ding aan de rechterkant waar is, of beide dingen waar zijn. Bijvoorbeeld de voorwaarde 2 <10 || 20 <30 is waar.
In Java kunt u vergelijkingen niet combineren zoals u dat in het gewoon Engels doet. In het Engels zou je kunnen zeggen: "We hebben tussen de drie en tien mensen aan de eettafel. "Maar in Java krijg je een foutmelding als je 3