Operatører er symboler som brukes til å utføre operasjoner på verdier, variabler eller utsagn. Uttrykkene de utfører disse handlingene på, kalles operander. Operasjonene gir et boolsk resultat (sant eller usant) for relasjonelle, likestilte og logiske operatører.

Antallet operander en operatør tar bestemmer typen. En operatør som tar en operand kalles "unary". En operatør som tar to operander kalles "binær".

Les videre for å lære hvordan du kan bruke logiske og relasjonelle operatører i Java. Enda bedre, de fleste programmeringsspråk bruker de samme operatorene, slik at du kan bruke denne kunnskapen andre steder.

Logiske operatører

De brukes til å lage logiske utsagn under programmering. Det er seks logiske operatører i Java. Tabellen nedenfor oppsummerer dem.

Operatør Navn Type
| Boolsk logisk ELLER Binær
& Boolsk logisk OG Binær
^ Boolsk logisk eksklusiv ELLER Binær
|| Betinget ELLER Binær
&& Betinget OG Binær
! Logisk IKKE Unary

Hvis du vil sjekke om en eller begge forhold er oppfylt, så bruk denne operatøren. En tilstand er et uttrykk som enten kan være sant eller usant.

instagram viewer

Boolsk logisk inkluderende ELLER (|)

Den logiske ELLER sjekker om begge operandene er sanne før de vurderer uttrykket.

hvis (dob <2005 | høyde <= 5) {
penger ++;
}

Ovenstående eksempel vil gi noen mer penger hvis fødselsdatoen (dob) er mindre enn 2005, eller hvis høyden er mindre enn eller lik 5 fot.

Boolsk logisk OG (&)

Denne operatøren brukes til å sjekke om begge forholdene er oppfylt før du tar en bestemt kjøringsbane i programmet. Den sjekker først om begge forholdene er oppfylt før hele uttrykket vurderes.

I slekt: Hvordan validere strenger ved hjelp av boolske metoder i Python

Boolsk logisk eksklusiv ELLER (^)

Hvis du vil sjekke om en av betingelsene er oppfylt, men ikke begge deler, er dette operatøren å bruke. Sannhetstabellen nedenfor oppsummerer resultatene du vil se når du bruker den.

uttrykk1 uttrykk2 uttrykk1 ^ uttrykk2
falsk falsk falsk
falsk ekte ekte
ekte falsk ekte
ekte ekte falsk

Boolsk betinget AND (&&)

Denne operatøren er lik den logiske AND. Forskjellen er at den først sjekker om tilstanden til venstre er sant før du går videre for å sjekke den til høyre.

Hvis den venstre delen blir funnet å være falsk, stopper utførelsen umiddelbart. Ellers vil evaluering av riktig del fortsette. Denne funksjonen er kjent som kortslutningsevaluering.

Se sannhetstabellen nedenfor for å forstå din forståelse av denne operatøren.

uttrykk1 uttrykk2 expression1 && expression2
falsk falsk falsk
falsk ekte falsk
ekte falsk falsk
ekte ekte ekte

Betinget ELLER (||)

Hvis noen av vilkårene er falske, vil kjøringen hoppe til neste del av programmet. Begge forholdene må med andre ord være sanne.

Denne operatøren ligner på den logiske ELLER. Den sjekker også om den ene eller begge betingelsene er oppfylt før du utfører en viss kode.

I likhet med den betingede AND bruker den logiske OR også kortslutningsevaluering. Den sjekker først om operanden til venstre er sant før den vurderes til høyre.

I slekt: Hva er en konstruktør i Java, og hvordan bruker du den?

Hvis tilstanden til venstre er funnet å være sant, er det ikke nødvendig å sjekke den til høyre. Ellers fortsetter evalueringen til høyre.

Logisk IKKE (!)

Denne operatøren brukes til å oppheve en tilstand. Det reverserer ganske enkelt betydningen av det den opererer på.

hvis (! (x> 5)) {
// uttalelser
}

Ovennevnte utsagn betyr at hvis "x er større enn 5" IKKE er sant, så utfør utsagnene inne i hvis.

Legg merke til bruken av runde parenteser med uttrykket (x> 5). Hvis du ikke inkluderer disse parentesene mens du skriver programmet, vil du få en kompileringstidsfeil. Årsaken er fordi ! er en unary operatør som handler på en betingelse. Uten parentesene vil kompilatoren tolke den som operatøren som handler på x, ikke x> 5.

Inkluderingen av parenteser er ikke bare for å gjøre det mulig for kompilatoren å tolke et uttrykk riktig. De kan også brukes som en måte for programmereren å bedre forstå mer komplekse uttrykk. Se på eksemplet nedenfor:

alder> = 7 && høyde <5

Noen mennesker kan ha vanskelig for å følge med logikken. Derfor foretrekker noen programmerere å legge til overflødige parenteser av lesbarhetsårsaker:

(alder> = 7) && (høyde <5)

Relasjonsoperatører

Disse operatørene brukes til å sammenligne enkle forhold mellom operander.

Operatør Navn
> Større enn
< Mindre enn
>= Større enn eller lik
<= Mindre enn eller lik

Relasjonsoperatører er ganske enkle å forstå fordi de alle har samme betydning som de vanlige algebraiske operatorene du allerede er kjent med. Det er å si, > og < har den samme betydningen du allerede kjenner som den som er gitt i tabellen ovenfor.

hvis (x <= 7) {
x ++;
}

Ovennevnte hvis uttalelse sjekker om x er mindre enn eller lik 7. Hvis det er sant, utføres utsagnene i parentes, ellers gjør de det ikke.

Nå vil det være en god tid å nevne likestillingsoperatører. Det er bare to av dem (lik, == og! =, Ikke lik). Som navnet antyder, er de vant til å teste likhet mellom to operander.

I slekt: Hvordan lage og utføre operasjoner på arrays i Java

Likhetsoperatøren (==) skal ikke forveksles med oppdragsoperatøren (=). Nybegynnerprogrammerere er glade i å blande sammen de to. Dette er rimelig siden symbolet (=) i algebra brukes til å uttrykke likhet. Det er ikke riktig i programmering, skjønt.

Oppdragsoperatøren (=) tilordner en verdi til en variabel mens likhetsoperatoren (==) tester for likhet. Se eksemplet nedenfor for å forstå forskjellen:

hvis (x = 5) {
// uttalelser
}

Ovennevnte kode vil alltid kjøres uavhengig av om x faktisk er lik 5. I mellomtiden vil koden nedenfor bare kjøres hvis x er lik 5. Derfor er det viktig å ikke blande sammen de to.

hvis (x == 5) {
// uttalelser
}

De to nevnte likhetsoperatørene har samme forrang, men lavere enn relasjonsoperatørene.

Relasjonsoperatører har også samme forrang. Utførelsen av disse operatørene begynner fra venstre mot høyre.

Ytterligere betraktninger av Java-operatører

Du må ha observert at det er mellomrom mellom noen operatører og deres operander i noen av eksemplene, mens det i andre ikke er det.

Fraværet / tilstedeværelsen av det rommet burde ikke bekymre deg. Kompilatoren vil ignorere det. Derfor betyr følgende uttrykk det samme:

Y> = 7 // ingen mellomrom
Y> = 7 // med mellomrom

Relasjonsoperatører brukes vanligvis til å uttrykke enkle forhold. For å kombinere enkle forhold til mer komplekse, må du bruke logiske operatorer. Logiske operatører kan teste flere forhold, i motsetning til relasjonsoperatører som bare tester en tilstand.

Det er også viktig å merke seg at de logiske operatorene (|, &, ^) kan være bitvise operatorer når de har integrerte operander. Når de brukes som bitvise operatører, vil de operere på bitene av deres operander.

Med denne kunnskapen fra operatører, bør du nå forberede deg på å lære Java-klasser.

E-post
Lær hvordan du lager klasser i Java

Hvis du lærer å programmere i Java, må du vite hvordan du lager klasser.

Les Neste

Relaterte temaer
  • Programmering
  • Java
  • Koding opplæringsprogrammer
Om forfatteren
Jerome Davidson (9 artikler publisert)

Jerome er Staff Writer på MakeUseOf. Han dekker artikler om programmering og Linux. Han er også en kryptoentusiast og holder alltid øye med kryptoindustrien.

Mer fra Jerome Davidson

Abonner på vårt nyhetsbrev

Bli med på nyhetsbrevet vårt for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!

Ett steg til…!

Bekreft e-postadressen din i e-posten vi nettopp sendte deg.

.