Visual C# 2011 Grundkurs

Logische Ausdrücke

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
In einem Programm gibt es viele Aussagen, die wahr oder falsch sind. Wenn man die Aussagen verknüpfen möchte, benötigt man logische Operatoren. Welche es gibt und wie die Auswertungsprioritäten aussehen, erfahren Sie in diesem Video.
05:11

Transkript

Wir schauen uns als Nächstes mal logische Ausdrücke in C# an. Logische Ausdrücke brauche ich immer dann, wenn ich innerhalb meiner Anwendung Aussagen miteinander verknüpfen möchte. Ein Beispiel dazu wäre, wenn ich in meiner Anwendung sagen möchte: Wenn der Benutzer angemeldet ist, und wenn er die dafür erforderlichen Rechte hat, dann mache das und das. Das heißt, das sind zwei Aussagen, die mit diesem "und" verknüpft werden, und das heißt, dass beide Aussagen da sein müssen; also er muss die Rechte haben, und er muss angemeldet sein, damit ja das gemacht wird. Auf der anderen Seite könnte ich sagen: Mache das und das, wenn er das Recht dazu hat, oder das Recht dazu hat. Da heißt es dann eben halt, dass man diese Aktion nur durchführt, wenn er entweder das eine Recht hat oder das andere Recht hat. Das Ganze schauen wir uns jetzt mal in Code an, und wie diese Ausdrücke im Einzelnen ausgewertet werden. Das habe ich schon mal kurz vorbereitet, und diesen Code schauen wir uns jetzt mal an. Zunächst haben wir hier oben den Bereich mit den Und-Variablen und wir haben hier 4 Variablen, und hinter jeder Variable ist ein aussagenlogischer Ausdruck, der eben mit "Und" verknüpft ist. Dann zunächst überprüfen wir die beiden Felder, dass der linke Ausdruck "True" ist und der Rechte, dann links "True" rechts "False", links "False" rechts "True", links "False" rechts "False", so wird das auch bei den nächsten Beispielen gehen. Dass heißt, wir haben jede mögliche Kombination dieser Wahrheitswerte einmal ausprobiert und können hier gleich die Werte ablesen. Dazu setzte ich mal hier unten ein Breakpoint, und führe das Ganze aus. Dann können wir uns hier oben die Ergebnisse angucken. Wie eben schon gesagt, wenn ich den Und-Operator, das ist hier das einfache kaufmännische "Und" benutze, dann wird dieser Gesamtausdruck nur dann zu wahr ausgewertet, wenn sowohl die eine Aussage wahr ist als auch die andere. Das heißt, dieses hier oben wird zu "True" ausgewertet, weil links "True" ist und rechts auch, und alles andere wird zu "False" ausgewertet. Dieses ist "False", dieses ist "False", und dieses auch. Eben weil einmal "False" steht, dann hier, und hier bei beiden.  Beim "Oder" ist das Ganze so ähnlich. Beim "Oder" habe ich diesen normalen Strich als Oder-Operator, "Oder" ist immer dann wahr, wenn entweder die linke Seite wahr ist oder die Rechte. Das heißt, das obere wird zu "True" ausgewertet, das zweite ebenfalls, das dritte ebenfalls, und das vierte eben nicht. Die oberen drei, eben weil hier zweimal "True" steht, hier steht einmal "True" und hier ebenfalls. Dann gibt es noch den Nicht-Operator, der ist relativ einfach. Wenn ich hier vorne einen Wahrheitswert "True" habe und ich schreibe den Negationsoperator davor, also dieses Ausrufezeichen, dann wird daraus ein "False", sieht man hier. Oder wenn ich einen "False" habe, schreibe ich den Negationsoperator davor, und habe ich hier ein "True". Also macht einfach aus einem "True" ein "False", aus einem "False" ein "True". Dann gibt es noch den Doppel-Und-Operator. Wir haben eben gesehen, bei einem normalen Und-Operator müssen beide Seiten wahr sein, damit dieser Ausdrück zu "wahr" ausgewertet wird. Das heißt, sobald eine Seite "falsch" ist, ist auch die gesamte Auswertung "falsch". Wenn ich jetzt einen ganz, ganz langen aussagenlogischen Ausdrück habe mit sehr vielen "unds" drin, dann kann ich diesen Doppel-Und-Operator hier nehmen, und so bald er merkt, dass einer dieser Teile "falsch" ist, bricht er die Auswertung des restlichen Ausdrucks ab. Das kann einem unter Umständen bei gewissen Situationen durchaus sehr viel Zeit sparen.  Dasselbe gibt es auch nochmal für den Oder-Operator, das ist der Doppel-Oder-Operator. Das heißt, bei "Oder" wissen wir, sobald ein, entweder linke oder der rechte Teil, "True" ist, dann ist der Gesamtausdruck "True". Das heißt, wenn wir so einen Ausdruck wie hier haben, dann guckt der doppelten "Oder-Operator", ob die erste Seite "True" ist, und wenn sie bereits "True" ist, dann wertet er die rechte Seite gar nicht mehr aus, weil er eh schon weiß, das das Ergebnis "True" sein wird. Als Letztes werfen wir einen Blick auf die Operatorenprioritäten. Wir haben hier mal eine aussagenlogische Formel, "True", "Oder-Oder-True", "Und-Und-False", und hier müssen wir immer beachten, dass der Und Operator eine höhere Priorität hat oder der Oder-Operator. Das heißt, als erstes wird hinten dieser Bereich mit "und" ausgewertet, der wird jetzt jedenfalls zu "False" ausgewertet. Und erst dann wird "True" ausgewertet, mit dem Ergebnis hier von also "False". Wenn ich das nicht haben möchte, und erst diesen Oder-Bereich ausgewertet haben möchte, kann ich das hier mit solchen Klammern machen, dann werden zuerst die Klammern ausgewertet, und dann greift die normale Operatorenpriorität.  Wir haben in diesem Video gesehen, wie man logische Ausdrucke benutzen kann. Wir können mehrere Aussagen in unserem Programm auf gewisser Art und Weise verknüpfen. Man hat zunächst den Und-Operator, dieser wird nur dann "wahr", wenn sowohl die linke als auch die rechte Seite "wahr" ist. Dann haben wir noch den Oder-Operator, und der wird immer dann wahr, wenn einer der beiden Seite, also links oder rechts, wahr ist. Dann haben wir noch den Nicht-Operator gesehen, der macht aus unserem "False" einen "True", aus unserem "True" einen "False", und danach haben wir uns das Doppel-Und angeguckt. Beim Doppel-Und wird die Auswertung abgebrochen, sobald er auf ein Term trift, der zu "False" ausgewertet wurde - weil dann der Rest nicht mehr ausgewertet werden muss, weil dann das Ergebnis automatisch sowieso "False" ist. Beim Doppel-Oder-Operator ist es so ähnlich. Sobald er dort auf einen "True" trifft, wird der restliche Ausdruck nicht mehr ausgewertet. Der Anteil der Auswertung "True" heißt, dass der gesamte Ausdruck zu "True" ausgewertet wird. Als letztes haben wir uns die Operatorenprioritäten angeguckt. Dort haben wir gesehen, das "Und" eine höhere Priorität hat als "Oder", und dass ich da entsprechend eventuell Klammern muss, je nachdem welche Auswerte-Strategie ich haben möchte.

Visual C# 2011 Grundkurs

Steigen Sie in die C#-Programmierung ein und lernen Sie sowohl die Grundlagen der Sprache C# als auch die Entwicklungsumgebung Visual Studio 2010 und .NET-Framework kennen.

7 Std. 28 min (81 Videos)
Derzeit sind keine Feedbacks vorhanden...
Hersteller:
Software:
Visual Studio Visual Studio 2010
Exklusiv für Abo-Kunden
Erscheinungsdatum:27.06.2011

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!