Un frammento di lezione con un mentore come parte del corso Codegym University. Iscriviti al corso completo.


"Ciao, Amigo. Lascia che ti parli di un nuovo tipo di dato. Il boolean . Le variabili di questo tipo possono assumere solo due valori: true e false . "

"Come lo usiamo?"

"Questo tipo è utilizzato implicitamente in molti luoghi. Proprio come qualsiasi operazione di addizione produce un numero, il risultato di qualsiasi confronto è un boolean . Ecco alcuni esempi:"

Codice Spiegazione
1
boolean m;
Queste due espressioni sono equivalenti. Il valore predefinito di una variabile booleana è false .
2
boolean m = false;
3
if (a > b)
    System.out.println(a);
Il risultato del confronto ( vero o falso ) sarà assegnato alla variabile m. La condizione è soddisfatta se l'espressione restituisce true .
4
boolean m = (a > b);
if (m)
    System.out.println(a);
5
boolean m = (a > b);
if (m == true)
    System.out.println(a);
Non è necessario confrontare una variabile logica ( booleana ) con true o false . Il risultato del confronto sarà un valore booleano che corrisponde all'altra variabile. Ad esempio, true == true restituisce true; true == false restituisce false .
6
boolean m = (a > b);
if (m)
    System.out.println(a);

"Altri esempi:"

Codice Spiegazione
1
public boolean isALessThanB (int a, int b)
{
    if (a < b)
        return true;
    else
        return false;
}
Questo metodo verifica che il numero a sia minore del numero b.

Ecco quattro confronti equivalenti. L'ultimo è il più compatto e corretto. Cerca sempre di usare la notazione compatta .

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

"E se volessi scrivere 0<a<b?"

"Java non ha un operatore di confronto che accetta tre operandi. Quindi, dovresti farlo in questo modo: (0<a) AND (a<b) ."

"Scrivo la parola AND?"

"Aspetta. Te lo spiego. Java ha tre operatori logici: AND , OR e NOT . Puoi usarli per costruire condizioni di varia complessità. Puoi usare questi operatori solo con espressioni booleane . Quindi, non puoi scrivere ( a+1) AND (3) , ma (a>1)AND (a<3) va bene."

"L' operatore NOT è unario: influisce solo sull'espressione a destra. È più simile a un segno meno prima di un numero negativo piuttosto che a un segno di moltiplicazione tra due numeri."

"Puoi eseguire varie operazioni su variabili booleane (logiche)."

"Tipo cosa?"

"Diamo un'occhiata:"

Operatore logico Notazione Java Espressione Risultato
E && vero  &&  vero VERO
vero &&  falso falso
falso  &&  vero falso
falso && falso falso
O || vero || VERO VERO
vero || falso VERO
falso || VERO VERO
falso || falso falso
NON ! ! VERO falso
! falso VERO
Combinazioni ed espressioni comuni mm falso
m || !M VERO
! (a && b) !a || !B
! (a || b) !a && !b

"Potresti farmi altri esempi?"

"Sicuro:"

Notazione Java Notazione logica
(a<3) && (a>0) (a < 3) AND (a>0)
(a>10) || (a<100) (a>10) OPPURE (a<100)
(a<b) && (!(c<=d)) (a<b) AND (NON (c<=d))

"Ora, svolgi alcuni compiti."

4
Compito
Java Syntax,  livello 4lezione 7
Bloccato
Labels and numbers
Not all labels are equally useful, but sometimes a lack of labels results in chaos. Let's do a task that dishes out labels: use the keyboard to enter an integer, and make the program indicate whether the number is negative or positive (or zero), and even or odd. Why do we need this? Just because, for practice. After all, we're here to learn!