Arbeiten mit .NET: Materialien/ Visual C-Sharp .NET: Variablen
<< Arbeiten mit .NET (Materialien)
Eine der Hauptfunktionen des Computers ist es, Werte zu speichern. Dies kann entweder dauerhaft auf der Festplatte oder aber, solange das Programm läuft, im Arbeitsspeicher passieren. Wir wollen uns in diesem Kapitel auf die Variante im Arbeitsspeicher beschränken. Das Problem ist, dass der Arbeitsspeicher viele verschiedene Arten von Daten verwalten muss. Beispielsweise den Brief in Word, der nur aus Buchstaben besteht, dann die Urlaubsfotos, die Sie gerade bearbeiten und zu guter letzt noch das Ergebnis der Rechnung, die Sie gerade den Taschenrechner haben rechnen lassen. Um das zu verwalten, gibt es Variablen, die in verschiedene Typen unterteilt sind, ähnlich wie beim Menschen: Die einen sind Superhirne und können sich ewig lange Zahlenreihen merken, die anderen Gedichte, wieder andere haben ein super bildliches Gedächtnis. Für jeden Zweck ein Typ. So ist es auch bei Variablen: Die einen für Zahlenreihen, die anderen für Wörter, wieder andere nur für einzelne Buchstaben. Dies wird in der Fachsprache auch als Datentyp bezeichnet.
Bevor wir Variablen verwenden können, müssen sie erstmal deklariert, das heißt vereinbart werden. Genau darum geht es im nächsten Abschnitt.
Deklarieren
BearbeitenEine Variable in Visual C# zu deklarieren, ist eigentlich ganz einfach:
- Sie müssen den Datentyp angeben
- Sie müssen den Variablennamen angeben, allerdings gibt es hierbei gewisse Beschränkungen:
- Der Name darf nur aus Buchstaben, Ziffern und Unterstrichen bestehen, es darf kein sog. Schlüsselwort, d.h. ein Visual C# schon bekanntes Wort sein
- Der Name muss mit einem Buchstaben beginnen
Eine gültige Deklaration wäre also beispielsweise:
int i;
Hierbei wird eine Variable des Types Integer (Ganzzahl) mit dem Namen 'i' deklariert.
Sie können auch mehrere Variablen auf einmal deklarieren:
int i, x, y, z;
Allerdings müssen die Variablen immer vom gleichen Typ sein.
______________________________________________________________ ______________________________________________________________
Ab C sharp 3.0
ist es auch möglich Variablen mit dem Schlüsselwort var anzulegen. Aber nur local. bsp:
var zahl = 2; var text = "Hallo welt!"
in Klasse sieht das dann so aus:
class Program { int zahl2 = 47;//richtig var zahl3 = 49;//falsch static void Main( string[] args ) { var zahl = 45;//richtig int zahl1 = 45;// richtig var gesamt = zahl + zahl1; Console.WriteLine( gesamt ); } }
Zuweisungen
BearbeitenWas bringen uns jetzt aber Variablen, wenn sie noch keinen Wert haben? Gar nichts! Also müssen wir ihnen einen Wert zuweisen. Das kann auf zwei unterschiedliche Arten passieren:
1.Wir weisen den Wert direkt bei der Deklaration der Variablen zu. Beispiel:
int i = 5;
Wobei das Gleichzeichen einen sog. Operator darstellt. Mit Operatoren wollen wir uns im nächsten Kapitel genauer beschäftigen.
2.Wir weisen den Wert der Variablen irgendwo im Quelltext zu. Beispiel:
int i; //Hier steht beliebiger Code i = 5; //Hier steht beliebiger Code
Auch hier stellt das Gleichzeichen einen Operator dar.
Eine nicht initialisierte Variable, also eine Variable, der noch kein Wert zugewiesen wurde, kann nicht verwendet werden. Folgender Code wird vom Compiler also nicht akzeptiert:
int i, y; y = 3 + i; i = 5;
Der folgende Code ist dagegen korrekt::
int i, y; i = 5; y = 3 + i;
Verwendung
BearbeitenDie Verwendung von Variablen ist eigentlich ganz einfach. Alle im Code verwendeten Werte können durch Variablen ersetzt werden. Beispiel:
string begrüßung = "Hello World!"; MessageBox.Show(begrüßung);
Datentypen
BearbeitenUm effektiv mit Variablen zu arbeiten, ist es von großer Bedeutung, die wichtigsten Datentypen zu kennen. Die folgende Tabelle enthält diese elementaren Datentypen sowie die Wertebereiche, d.h. die Werte, die der Variable zugewiesen werden dürfen. Dabei erhebt die Tabelle keinen Anspruch auf Vollständigkeit, enthält aber alle Typen, die für die tägliche Arbeit notwendig sind. Im Alltag werden Ihnen vor allem die Datentypen begegnen, deren Namen in der Tabelle fett dargestellt sind.
Datentyp | Wertebereich | Beschreibung | Standardwert |
---|---|---|---|
Short | -32.768 bis 32.767 | 16-Bit-Ganzzahl | 0 |
Integer | -2.147.483.648 bis 2.147.483.647 | 32-Bit-Ganzzahl | 0 |
Long | -9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807 | 64-Bit-Ganzzahl | 0 |
Byte | 0 bis 255 | vorzeichenlose 8-Bit-Ganzzahl | 0 |
UShort | 0 bis 65.535 | vorzeichenlose 16-Bit-Ganzzahl | 0 |
UInteger | 0 bis 4.294.967.295 | vorzeichenlose 32-Bit-Ganzzahl | 0 |
ULong | 0 bis 18.446.744.073.709.551.615 | vorzeichenlose 64-Bit-Ganzzahl | 0 |
Double | -1,79769313486231e308 bis 1,79769313486231e308 | Gleitkommazahl doppelter Genauigkeit | 0.0 |
Char | Unicode | einzelnes Zeichen | '\0' (Nullzeichen) |
String | Unicode | Zeichenkette (bis zu 2 Mrd. Zeichen) | |
Boolean | True (wahr) oder False (falsch) | Wahrheitswerte | False |
DateTime | 1. Januar 0001 bis 31. Dezember 9999 | Objekttyp (z.B.: DateTime Datum = DateTime.Now; weist der Variablen Datum das aktuelle Datum und die aktuelle Uhrzeit zu, DateTime Datum = new DateTime(); weist der Variablen Datum den Standardwert zu) | 1. Januar 1, 00:00:00 |
Welchen Datentyp soll ich nehmen?
BearbeitenDiese Frage stellen sich Programmieranfänger und erfahrene Programmierer bei Zahlenwerten immer wieder. Die wichtigste Empfehlung hier ist, sich ein System zu entwickeln und das dann konsequent durchzusetzen.
Ganzzahlen
BearbeitenHier empfehle ich uneingeschränkt den Integer-Datentyp. Er ist für fast alle Anwendungen groß genug (wenn nicht, wechseln Sie auf Long), außerdem rechnet Windows mit 32-Bit-Zahlen am schnellsten. Außerdem wird Integer auch von den meisten Funktionen des .NET-Frameworks verwendet.
Gleitkommazahlen
BearbeitenFür Gleitkommazahlen nehme ich aus den gleichen Gründen, aus denen heraus ich auch Integer benutze, den Single-Datentyp: nicht zu klein, nicht zu groß, wird von .NET verwendet.