Quote Originariamente inviata da AleJAVA Visualizza il messaggio
grazie per le risposte =)

Comunque non ho capito cosa intendi come short-circui .. cosa intendi ? cmq si da applicare ai boolean ;P
Per gli operatori && e || il comportamento è "short-circuit" perché se il primo operando è tale per cui il risultato complessivo è già deducibile, il secondo operando non viene nemmeno valutato.

if (metodo1() == 3 || metodo2() == 7)

Se metodo1() == 3 è true, il risultato finale della OR è sicuramente true. Quindi metodo2() == 7 non viene valutato (il metodo non viene proprio invocato!).

Mentre gli operatori & e | usati come operatori "logici" (possono essere bitwise con valori interi) non hanno il comportamento "short-circuit", ovvero entrambi gli operandi vengono sempre valutati.