1. Booleantyp
Som vi redan har sett har Java det superanvändbara if-elseuttalandet. Den exekverar ett block med satser om villkoret inom parentes är sant, och ett andra block med satser om villkoret är falskt.
För enkelhetens skull när man arbetar med uttryck som kan vara antingen sant eller falskt, lade Javas skapare till den speciella booleantypen. Dess huvudsakliga egenskap är att variabler av denna typ bara kan ha två värden: trueoch false.
Det är omöjligt att tilldela några andra värden till booleanvariabler. Kompilatorn tillåter inte det.
Och varför behöver vi en så primitiv typ?
Tja, det som är bra är att du kan använda det för att lagra värden för logiska uttryck. Exempel:
| Koda | Förklaring |
|---|---|
|
Den booleska isOKvariabeln innehåller värdettrue |
|
Den booleska hasErrorvariabeln innehåller värdetfalse |
|
Den booleska isSeniorvariabeln innehåller värdettrue |
|
Den booleska hasNewRecordvariabeln innehåller värdettrue |
|
Den booleska Den booleska |
2. Använda booleska variabler
Booleska variabler skulle vara till liten nytta om de bara kunde lagra resultaten av uttryck. Poängen här är att du också kan använda dem. Var? Var du än kan skriva ett logiskt uttryck.
Till exempel kan du använda en boolesk variabel i tillståndet för ett ifpåstående:
| Koda | Likvärdig |
|---|---|
|
|
I det här exemplet är det liten fördel att göra denna ersättning, men när program växer sig större blir deras villkor mer komplexa. Du kommer att vara övertygad om detta inom en snar framtid.
3. Jämförelseoperatörer
I Java, liksom i andra programmeringsspråk, är det ofta nödvändigt att jämföra variabler med varandra. Och Java har precis de operatorer du behöver för att göra jämförelser:
| Operatör | Förklaring | Exempel |
|---|---|---|
< |
Mindre än | a < 10 |
> |
Större än | b > a |
<= |
Mindre än eller lika | a <= 10 |
>= |
Större än eller lika med | speed >= max |
== |
Lika | age == 18 |
!= |
Inte lika | time != 0 |
Ovanstående operatorer används för att skapa logiska uttryck. Resultaten kan lagras i booleanvariabler eller användas som villkor för ett ifpåstående.
Operatörerna som består av två tecken kan inte delas isär.
Med andra ord, kod som denna kommer inte att kompilera:
a < = 10
speed > = max
age = = 18
time ! = 0
Observera att det inte finns några =>eller =<operatorer. Endast operatörerna <=och >=. Om du skriver kommer din kod helt enkelt inte att kompilera.a=< 3
I Java kan du inte skriva ett uttryck som . Trots allt kommer uttrycket att utvärderas till eller . Och du kan inte utföra jämförelsen (typerna är olika). Åtminstone i Java.18 < age < 6518 < agetruefalsetrue < 65
Vad kan göras? Du hittar svaret på denna fråga i nästa lektion.
GO TO FULL VERSION