Nosacīti operatori tiek izmantoti, lai novērtētu stāvokli, kas tiek piemērots vienam vai diviem Būla izteicieni. Novērtējuma rezultāts ir patiess vai nepatiess.
Ir trīs nosacīti operatori:
& loģiskais UN operators.
|| loģiskais VAI operators.
?: trīskāršais operators.
Nosacīti operatori
Gan loģiskais UN, gan loģiskais VAI operatori ņem divus operandus. Katrs operands ir Būla izteiksme (t.i., tas tiek vērtēts kā patiess vai nepatiess). Loģiskais UN nosacījums atgriežas patiesībā, ja abi operandi ir patiesi, pretējā gadījumā tas atgriež nepatiesu. Loģiskais VAI nosacījums atgriež nepatiesu, ja abi operandi ir nepatiesi, pretējā gadījumā tas atgriežas patiesi.
Gan loģiski, gan loģiski VAI operatori izmanto īssavienojuma novērtēšanas metodi. Citiem vārdiem sakot, ja pirmais operands nosaka nosacījuma kopējo vērtību, tad otrais operands netiek novērtēts. Piemēram, ja loģiskais VAI operators savu pirmo operandu novērtē kā patiesu, tas nav jānovērtē, jo tas jau zina, ka loģiskajam VAI nosacījumam ir jābūt patiesam. Tāpat, ja loģiskais UN operators savu pirmo operandu novērtē kā nepatiesu, tas var izlaist otro operandu, jo tas jau zina, ka loģiskais UN nosacījums būs nepatiess.
trīskāršais operators ņem trīs operandus. Pirmais ir Būla izteiksme; otrā un trešā ir vērtības. Ja Būla izteiksme ir patiesa, trīskāršais operators atdod otrā operanda vērtību, pretējā gadījumā tas atgriež trešā operanda vērtību.
Nosacīto operatoru piemērs
Lai pārbaudītu, vai skaitlis ir dalāms ar diviem un četriem:
int skaits = 16;
if (skaitlis% 2 == 0 && skaitlis% 4 == 0)
{
System.out.println ("Tas ir dalāms ar diviem un četriem!");
}
cits
{
System.out.println ("Tas nav dalāms ar diviem un četriem!");
}
Nosacītais operators "&&" vispirms novērtē, vai tā pirmais operands (t.i., skaitlis% 2 = = 0) ir patiess, un pēc tam novērtē, vai tā otrais operands (t.i., skaitlis% 4 == 0) ir patiess. Tā kā abi ir patiesi, loģiskais UN nosacījums ir taisnība.