Előadásrészlet egy mentorral a Codegym University tanfolyam részeként. Jelentkezzen a teljes tanfolyamra.


"Szia, Amigo. Hadd meséljek egy új adattípusról. A logikai . Az ilyen típusú változók csak két értéket vehetnek fel: igaz és hamis . "

– Hogyan használjuk?

"Ezt a típust implicit módon sok helyen használják. Ahogy minden összeadási művelet számot ad, minden összehasonlítás eredménye logikai érték . Íme néhány példa:

Kód Magyarázat
1
boolean m;
Ez a két kifejezés egyenértékű. A logikai változó alapértelmezett értéke false .
2
boolean m = false;
3
if (a > b)
    System.out.println(a);
Az összehasonlítás eredménye ( igaz vagy hamis ) a változóhoz lesz rendelve m. A feltétel teljesül, ha a kifejezés kiértékelése igaz .
4
boolean m = (a > b);
if (m)
    System.out.println(a);
5
boolean m = (a > b);
if (m == true)
    System.out.println(a);
Nincs szükség logikai ( logikai ) változók igaz vagy hamis összehasonlítására . Az összehasonlítás eredménye egy logikai érték lesz , amely megegyezik a másik változóval. Például igaz == igaz igazra értékeli ki; igaz == false hamisra értékeli ki .
6
boolean m = (a > b);
if (m)
    System.out.println(a);

"További példa:"

Kód Magyarázat
1
public boolean isALessThanB (int a, int b)
{
    if (a < b)
        return true;
    else
        return false;
}
Ez a módszer ellenőrzi, hogy az a szám kisebb-e, mint a b.

Íme négy egyenértékű összehasonlítás. Az utolsó a legkompaktabb és leghelyesebb. Mindig próbáljon kompakt jelölést használni .

2
public boolean isALessThanB (int a, int b)
{
   boolean m = (a < b);
    if (m)
        return true;
    else
        return false;
}
3
public boolean isALessThanB (int a, int b)
{
    boolean m = (a < b);
    return m;
}
4
public boolean isALessThanB (int a, int b)
{
    return a < b;
}

"Mi van, ha 0<a<b-t akarok írni?"

"A Java-nak nincs olyan összehasonlító operátora, amely három operandust vesz fel. Tehát ezt a következőképpen kell megtennie: (0<a) ÉS (a<b) ."

– Írjam az ÉS szót?

"Várj. Elmagyarázom. A Java-nak három logikai operátora van: AND , OR és NOT . Használhatod őket változó bonyolultságú feltételek létrehozására. Ezeket az operátorokat csak logikai kifejezésekkel használhatod. Tehát nem írhatsz ( a+1) ÉS (3) , de az (a>1)ÉS (a<3) rendben van."

"A NOT operátor unáris: csak a jobb oldali kifejezést érinti. Inkább egy mínuszjel a negatív szám előtt, nem pedig egy szorzójel két szám között."

"Különféle műveleteket hajthat végre logikai (logikai) változókon."

"Mint micsoda?"

"Lássuk:"

Logikai operátor Java jelölés Kifejezés Eredmény
ÉS && igaz  és  igaz igaz
igaz és  hamis hamis
hamis  &&  igaz hamis
hamis && hamis hamis
VAGY || igaz || igaz igaz
igaz || hamis igaz
hamis || igaz igaz
hamis || hamis hamis
NEM ! ! igaz hamis
! hamis igaz
Gyakori kombinációk és kifejezések m && !m hamis
m || !m igaz
! (a && b) !a || !b
! (a || b) !a && !b

– Tudna még példákat mondani?

"Biztos:"

Java jelölés Logikai jelölés
(a<3) && (a>0) (a < 3) ÉS (a>0)
(a>10) || (a<100) (a>10) VAGY (a<100)
(a<b) && (!(c<=d)) (a<b) ÉS (NEM (c<=d))

– Most pedig csinálj néhány feladatot.