Video: Web Programming - Computer Science for Business Leaders 2016 2024
Tänk på det här exemplet om du behöver skriva bättre villkor i Java. I Backgammon och andra tärningsspel är rullande 3 och 5 inte detsamma som rullande 4 och 4, även om summan för båda rullarna är 8. Nästa drag varierar beroende på om du rullar dubbel.
För att få datorn att rulla två tärningar, kör du myRandom. nextInt (6) + 1 två gånger. Sedan kombinerar du de två rullarna till ett större, mer komplicerat om uttalande.
Så att simulera ett Backgammon-spel (och många andra, mer praktiska situationer) måste du kombinera förhållanden.
Om die1 + die2 är lika med 8 och die1 är lika med die2, …
Du behöver saker som och och eller . Java har operatörer att representera dessa begrepp.
Operatörsymbol | Betydelse | Exempel |
---|---|---|
&& | och | 4 <ålder && ålder <8 |
|| | eller | ålder <4 || 8 <ålder |
! | inte | eachKidGetsTen |
Kombinerade förhållanden, som de i Tabell 10-1, kan vara mäktiga förvirrande. Det är därför du måste gå försiktigt när du använder sådana saker. Här är en kort förklaring av varje exempel i tabellen:
-
4 <ålder & & ålder <8
Värdet på åldersvariabeln är större än 4 och är mindre än 8. Nummerna 5, 6, 7, 8, 9 … är alla större än 4. Men bland dessa siffror är endast 5, 6 och 7 mindre än 8. Så bara siffrorna 5, 6 och 7 uppfyller detta kombinerade tillstånd.
-
ålder <4 || 8 <ålder
Värdet på åldersvariabeln är mindre än 4 eller är större än 8. För att skapa tillståndet eller använder du två rörsymboler. På många U. S. engelska tangentbord kan du hitta rörsymbolen omedelbart ovanför Enter-tangenten (samma nyckel som backslash men ändras).
I detta kombinerade tillstånd är värdet av åldersvariabeln antingen mindre än 4 eller högre än 8. Om ett tal är mindre än 4 uppfyller numret villkoret. Numrerar som 1, 2 och 3 är alla mindre än 4, så dessa siffror uppfyller det kombinerade tillståndet.
Om ett tal är större än 8 uppfyller numret också det kombinerade tillståndet. Numrerar som 9, 10 och 11 är alla större än 8, så dessa siffror uppfyller villkoret.
-
everyKidGetsTen
Du kan vara förvirrad av utropstecken. Du kanske tror det! eachKidGetsTen betyder "Ja, varje barn får få tio. "Men det är inte vad detta uttryck betyder. I detta uttryck står "Variabeln varjeKidGetsTen har inte värdet sant."I Java och andra programmeringsspråk står ett utropstecken för negativ, för ingen väg, för inte.
En booleansk variabels värde är antingen sann eller falsk. Därför att! betyder inte, uttrycken eachKidGetsTen och! eachKidGetsTen har motsatta värden. Så när varjeKidGetsTen är sant,! eachKidGetsTen är falsk (och vice versa).
Java: s || operatören är inklusive. Det betyder att du blir sann när någonting på vänster sida är sant, saken på höger sida är sant, eller båda sakerna är sanna. Till exempel villkoret 2 <10 || 20 <30 är sant.
I Java kan du inte kombinera jämförelser som du gör på vanlig engelska. På engelska kan du säga, "Vi kommer att ha mellan tre och tio personer vid middagsbordet. "Men i Java får du ett felmeddelande om du skriver 3