Et foredragsuddrag med en mentor som en del af Codegym University-kurset. Tilmeld dig hele kurset.


"Hej, Amigo. Lad mig fortælle dig om en ny datatype. Den boolske . Variabler af denne type kan kun have to værdier: sand og falsk . "

"Hvordan bruger vi det?"

"Denne type er implicit brugt mange steder. Ligesom enhver additionsoperation producerer et tal, er resultatet af enhver sammenligning en boolesk . Her er nogle eksempler:"

Kode Forklaring
1
boolean m;
Disse to udtryk er ækvivalente. Standardværdien for en boolesk variabel er falsk .
2
boolean m = false;
3
if (a > b)
    System.out.println(a);
Resultatet af sammenligningen (enten sand eller falsk ) vil blive tildelt variablen m. Betingelsen er opfyldt, hvis udtrykket evalueres til sandt .
4
boolean m = (a > b);
if (m)
    System.out.println(a);
5
boolean m = (a > b);
if (m == true)
    System.out.println(a);
Der er ingen grund til at sammenligne en logisk ( boolesk ) variabel med sand eller falsk . Resultatet af sammenligningen vil være en boolean , der matcher den anden variabel. For eksempel, sand == sand evalueres til sand; true == falsk evalueres til falsk .
6
boolean m = (a > b);
if (m)
    System.out.println(a);

"Flere eksempler:"

Kode Forklaring
1
public boolean isALessThanB (int a, int b)
{
    if (a < b)
        return true;
    else
        return false;
}
Denne metode verificerer, at nummer a er mindre end nummer b.

Her er fire tilsvarende sammenligninger. Den sidste er den mest kompakte og korrekte. Prøv altid at bruge kompakt notation.

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;
}

"Hvad hvis jeg vil skrive 0<a<b?"

"Java har ikke en sammenligningsoperator, der tager tre operander. Så du skal gøre det sådan her: (0<a) OG (a<b) ."

"Skriver jeg ordet OG?"

"Vent. Jeg skal forklare det. Java har tre logiske operatorer: AND , OR og NOT . Du kan bruge dem til at konstruere betingelser af varierende kompleksitet. Du kan kun bruge disse operatorer med booleske udtryk. Så du kan ikke skrive ( a+1) OG (3) , men (a>1)AND (a<3) er OK."

" NOT- operatoren er unær: den påvirker kun udtrykket til højre. Det er mere som et minustegn før et negativt tal snarere end et multiplikationstegn mellem to tal."

"Du kan udføre forskellige operationer på booleske (logiske) variabler."

"Som hvad?"

"Lad os se:"

Logisk operator Java notation Udtryk Resultat
OG && sandt  &&  sandt rigtigt
sandt &&  falsk falsk
falsk  &&  sand falsk
falsk && falsk falsk
ELLER || sandt || rigtigt rigtigt
sandt || falsk rigtigt
falsk || rigtigt rigtigt
falsk || falsk falsk
IKKE ! ! rigtigt falsk
! falsk rigtigt
Almindelige kombinationer og udtryk m && !m falsk
m || !m rigtigt
! (a && b) !a || !b
! (a || b) !a && !b

"Kan du give mig flere eksempler?"

"Jo da:"

Java notation Logisk notation
(a<3) && (a>0) (a < 3) OG (a>0)
(a>10) || (a<100) (a>10) ELLER (a<100)
(a<b) && (!(c<=d)) (a<b) OG (IKKE (c<=d))

"Gør nu nogle opgaver."