Le & est un ET logique
Le && est un ET PUIS logique, c'est � dire que le deuxi�me membre n'est �valu� que si le premier est VRAI.
Exemple
for (int i=0; i<10 && monTableau[i]!=-1; i++)
{
...
}
dans ce cas, le && est n�cessaire car tu aurais sinon un ArrayIndexOutOfBoundsException.
Mais de fa�on g�n�rale, le & n'est pas interdit, c'est un ET logique normal.
De la m�me fa�on, le || est un OU BIEN logique, ...
Manu
-----Message d'origine-----
De : St�phan BERNARD [mailto:[EMAIL PROTECTED]]
Envoy� : jeudi 4 avril 2002 16:09
� : [EMAIL PROTECTED]
Objet : & | && ?
Bonjour la liste,
Je viens de tomber sur un code java dans lequel tous les
tests mettant en oeuvre une condition "et" (et aussi "ou")
sont �crits avec un simple & (au lieu de &&).
Bref, l'erreur classique, surtout en C, mais compte tenu du
fait que tout � l'air correctement parenth�s� (p.ex,
if ((i < 10) & (j > 15)) ), je me demandais si le & tout
seul, effectu� sur des bool�ens gr�ce au parenth�sage,
n'�tait pas suffisant.
La seule diff�rence que je vois serait au moment de la
compilation, o� l'erreur renvoy�e par
if ( i < 10 & j > 15) et le m�me code avec && ne serait pas
de m�me nature.
Par contre, je ne vois pas de contre-exemples pour :
- Un cas correctement parenth�s� o� le r�sultat serait
diff�rent (� part en C)
- Un cas mal (ou pas) parenth�s� avec une compilation qui
passe pour le & et qui ne passerait pas pour &&
(compte-tenu du d�sir de vouloir �crire une condition en
&&, i.e. avec deux membres "souhait�s" bool�ens).
Quelqu'un voit un contre-exemple ?
Merci d'avance.
--
St�phan BERNARD (+33) 473 44 07 25
[EMAIL PROTECTED]
LISC/CEMAGREF - 24 av. des Landais, BP 50085 - 63172
Aubi�re Cedex
