Operatori ir simboli, ko izmanto, lai veiktu darbības ar vērtībām, mainīgajiem vai paziņojumiem. Izteiksmes, ar kurām viņi veic šīs darbības, sauc par operandiem. Darbības atgriež būla rezultātu (patiesu vai nepatiesu) relāciju, vienlīdzības un loģiskajiem operatoriem.
Operatoru skaits, ko operators uzņem, nosaka tā tipu. Operatoru, kurš paņem vienu operandu, sauc par "unāru". Operatoru, kas aizņem divus operandus, sauc par "bināro".
Lasiet tālāk, lai uzzinātu, kā Java var izmantot loģiskos un relāciju operatorus. Vēl labāk, lielākajā daļā programmēšanas valodu tiek izmantoti vieni un tie paši operatori, lai jūs varētu šīs zināšanas pielietot citur.
Loģiskie operatori
Tos izmanto, lai programmēšanas laikā izveidotu loģiskus paziņojumus. Java ir seši loģiski operatori. Zemāk esošajā tabulā tie ir apkopoti.
Operators | Nosaukums | Tips |
---|---|---|
| | Būla loģiskā VAI | Binārs |
& | Būla loģiskā UN | Binārs |
^ | Būla loģiskā ekskluzīvā VAI | Binārs |
|| | Nosacīts VAI | Binārs |
&& | Nosacīts UN | Binārs |
! | Loģiski NAV | Unārijs |
Ja vēlaties pārbaudīt, vai ir izpildīts viens vai abi nosacījumi, izmantojiet šo operatoru. Nosacījums ir izteiksme, kas var būt patiesa vai nepatiesa.
Būla loģiskā iekļaušana VAI (|)
Loģiskais VAI pirms izteiksmes novērtēšanas pārbauda, vai abi operandi ir patiesi.
ja (dob <2005 | augstums <= 5) {
nauda ++;
}
Iepriekš minētais piemērs kādam dos vairāk naudas, ja viņa dzimšanas datums ir mazāks par 2005. gadu vai ja viņa augums ir mazāks vai vienāds ar 5 pēdām.
Būla loģiskā UN (&)
Šis operators tiek izmantots, lai pārbaudītu, vai abi nosacījumi ir patiesi, pirms iet noteiktā izpildes ceļā programmā. Pirms visa izteiksmes novērtēšanas tā vispirms pārbauda, vai abi nosacījumi ir patiesi.
Saistīts: Kā validēt virknes, izmantojot Būla metodes Python
Būla loģiskā ekskluzīvā VAI (^)
Ja vēlaties pārbaudīt, vai ir izpildīts viens no nosacījumiem, bet ne abi, tad tas ir operators, kuru izmantot. Tālāk sniegtajā patiesības tabulā apkopoti rezultāti, kurus redzēsiet, kad to izmantosit.
izteiksme1 | izteiksme2 | izteiksme1 ^ izteiksme2 |
---|---|---|
nepatiesa | nepatiesa | nepatiesa |
nepatiesa | taisnība | taisnība |
taisnība | nepatiesa | taisnība |
taisnība | taisnība | nepatiesa |
Būla nosacītā UN (&&)
Šis operators ir līdzīgs loģiskajam UN. Atšķirība ir tā, ka tā vispirms pārbauda, vai kreisajā pusē esošais nosacījums ir patiess, pirms pāriet, lai pārbaudītu labajā pusē esošo.
Ja tiek konstatēts, ka kreisā daļa ir nepatiesa, izpilde nekavējoties apstājas. Pretējā gadījumā labās daļas novērtēšana turpināsies. Šī funkcija ir pazīstama kā īssavienojuma novērtēšana.
Skatiet patiesības tabulu zemāk, lai pamatotu izpratni par šo operatoru.
izteiksme1 | izteiksme2 | izteiksme1 && izteiksme2 |
---|---|---|
nepatiesa | nepatiesa | nepatiesa |
nepatiesa | taisnība | nepatiesa |
taisnība | nepatiesa | nepatiesa |
taisnība | taisnība | taisnība |
Nosacīts VAI (||)
Ja kāds no nosacījumiem ir nepatiess, izpilde pāriet uz nākamo programmas daļu. Citiem vārdiem sakot, abiem nosacījumiem jābūt patiesiem.
Šis operators ir līdzīgs loģiskajam OR. Pirms noteikta koda izpildīšanas tā arī pārbauda, vai ir izpildīts viens vai abi nosacījumi.
Līdzīgi nosacītajam, arī loģiskajā VAI tiek izmantots īssavienojuma novērtējums. Tas vispirms pārbauda, vai operands kreisajā pusē ir patiess, pirms novērtē labajā pusē esošo.
Saistīts: Kas ir Java konstruktors un kā jūs to izmantojat?
Ja tiek konstatēts, ka kreisajā pusē esošais nosacījums ir patiess, nav jāpārbauda labais. Pretējā gadījumā vērtēšana pa labi turpināsies.
Loģiski NAV (!)
Šis operators tiek izmantots, lai noraidītu nosacījumu. Tas vienkārši maina tā darbības nozīmi.
ja (! (x> 5)) {
// paziņojumi
}
Iepriekš minētais apgalvojums nozīmē, ka, ja "x ir lielāks par 5" NAV taisnība, tad izpildiet apgalvojumus iekšpusē ja.
Ievērojiet apaļo iekavu izmantošanu ar izteicienu (x> 5). Ja, rakstot programmu, neiekļausiet šīs iekavas, tiks parādīta kļūda sastādīšanas laikā. Iemesls ir tāpēc ! ir unārais operators, kurš darbojas ar nosacījumu. Bez iekavām kompilators to interpretētu kā operatoru, kas darbojas uz x, nevis x> 5.
Iekavu iekavēšana nav paredzēta tikai tam, lai kompilators varētu pareizi interpretēt izteiksmi. Tos var izmantot arī kā veidu, kā programmētājs labāk izprot sarežģītākas izteiksmes. Apskatiet šo piemēru:
vecums> = 7 un& augums <5
Dažiem cilvēkiem varētu būt grūti ievērot loģiku. Tāpēc daži programmētāji lasāmības labad dod priekšroku lieku iekavu pievienošanai:
(vecums> = 7) && (augstums <5)
Relāciju operatori
Šie operatori tiek izmantoti, lai salīdzinātu vienkāršas attiecības starp operandiem.
Operators | Nosaukums |
---|---|
> | Lielāks nekā |
< | Mazāk nekā |
>= | Lielāks vai vienāds ar |
<= | Mazāks par vai vienāds ar |
Relāciju operatorus ir diezgan viegli saprast, jo tiem visiem ir tāda pati nozīme kā parastajiem algebriskajiem operatoriem, kas jums jau ir pazīstami. Proti, > un < ir tāda pati nozīme, kādu jūs jau zināt, kā norādīts iepriekš tabulā.
ja (x <= 7) {
x ++;
}
Augšējais ja paziņojums pārbauda, vai x ir mazāks vai vienāds ar 7. Ja tā ir taisnība, tad iekavās esošie paziņojumi tiek izpildīti, pretējā gadījumā tie nav.
Tagad būtu piemērots laiks pieminēt līdztiesības veicējus. Ir tikai divi no tiem (vienāds ar, == un! =, Nav vienāds ar). Kā norāda viņu nosaukums, viņi tiek izmantoti, lai pārbaudītu divu operandu vienlīdzību.
Saistīts: Kā izveidot un veikt operācijas ar masīviem Java
Vienlīdzības operatoru (==) nedrīkst jaukt ar piešķiršanas operatoru (=). Iesācēju programmētāji labprāt sajauc abus. Tas ir saprātīgi, jo algebrā simbolu (=) izmanto, lai izteiktu vienlīdzību. Tomēr tas nav pareizi programmēšanā.
Piešķiršanas operators (=) piešķir mainīgajam vērtību, kamēr vienlīdzības operators (==) pārbauda vienlīdzību. Skatiet tālāk sniegto piemēru, lai saprastu atšķirību:
ja (x = 5) {
// paziņojumi
}
Iepriekš minētais kods vienmēr tiks izpildīts neatkarīgi no tā, vai x faktiski ir vienāds ar 5. Tikmēr zemāk redzamais kods tiks izpildīts tikai tad, ja x ir vienāds ar 5. Tāpēc ir svarīgi nesajaukt abus.
ja (x == 5) {
// paziņojumi
}
Abiem pieminētajiem vienlīdzības operatoriem ir vienāds prioritātes līmenis, kaut arī zemāks nekā relāciju operatoriem.
Arī relāciju operatoriem ir vienāda prioritāte. Šo operatoru izpilde sākas no kreisās uz labo pusi.
Papildu Java operatoru apsvērumi
Jums noteikti jāievēro, ka dažos piemēros ir atstarpe starp dažiem operatoriem un viņu operandiem, bet citos nav.
Šīs vietas neesamībai / klātbūtnei nevajadzētu uztraukties. Sastādītājs to ignorēs. Tādēļ šādi izteicieni nozīmē to pašu:
Y> = 7 // nav atstarpes
Y> = 7 // ar atstarpi
Relāciju operatori parasti tiek izmantoti, lai izteiktu vienkāršus nosacījumus. Lai vienkāršus nosacījumus apvienotu sarežģītākos, jums jāizmanto loģiskie operatori. Loģiskie operatori var pārbaudīt vairākus nosacījumus, atšķirībā no relāciju operatoriem, kuri tikai pārbauda vienu nosacījumu.
Ir arī svarīgi atzīmēt, ka loģiskie operatori (|, &, ^) var būt biti pa operatoriem, ja tiem ir integrāli operandi. Ja tos izmanto kā bitu operatorus, tie darbosies ar savu operandu bitiem.
Izmantojot šīs operatoru zināšanas, jums tagad vajadzētu gatavoties apgūt Java klases.
Ja jūs mācāties programmēt Java valodā, jums būs jāzina, kā izveidot klases.
Lasiet Tālāk
- Programmēšana
- Java
- Kodēšanas konsultācijas
Džeroms ir MakeUseOf personāla rakstnieks. Viņš aptver rakstus par programmēšanu un Linux. Viņš ir arī kriptogrāfijas entuziasts un vienmēr tur norādes par kriptogrāfijas nozari.
Abonējiet mūsu biļetenu
Pievienojieties mūsu informatīvajam izdevumam par tehniskiem padomiem, atsauksmēm, bezmaksas e-grāmatām un ekskluzīviem piedāvājumiem!
Vēl viens solis !!!
Lūdzu, apstipriniet savu e-pasta adresi e-pastā, kuru tikko nosūtījām.