Hallo,
Worin besteht eigentlich der Unterschied ob ich nun & oder AND oder einfach nur ein Komma nehme?
Es gibt auch Unterschiede zwischen "&", "&&", "" und "". Wenn nur "&" oder "" in einem logischen Vergleich stehen, werden erst beide Seiten des Ausdruckes ausgewertet und dann verglichen. Sollte dort jedoch "&&" oder "" stehen, wird erst der linke Ausdruck ausgewertet. Sollte dies schon zu einem klaren Ergebnis führen (true bei "" oder false bei "&&") dann wird der rechte Ausdruck gar nicht mehr beachtet.
Kleines Beispiel:
a=10;
if(a==20 && b==10)
Obwohl b garnicht existiert wird keine Fehlermeldung ausgegeben, da "a==20" schon false und somit "&&" ebenfalls false ergibt. Somit wird "b==10" nicht beachtet. Schreibt man jedoch:
a=10;
if(a==20 & b==10)
Hier erscheint eine Fehlermeldung das b nicht existiert, da erst beide Seiten von "&" ausgewertet werden.
grüße
Thomas Mell