Dart: Typumwandlungen und statische Variablen – Notizen von meinem ersten Tag
Meine Dart-Lernreise hat begonnen
Hallo! Heute habe ich ernsthaft mit Flutter angefangen. Statt direkt in Flutter einzusteigen, wollte ich aber bei den Grundlagen beginnen. Denn je stärker das Fundament, desto länger hält das Gebäude. Nach derselben Logik wollte ich nicht in Flutter springen, ohne Dart gut zu beherrschen.
Live-Demo: Typumwandlungen in Dart
Probieren Sie Typumwandlungen und statische Konzepte interaktiv aus:
Typumwandlungen
Eines der ersten Themen, auf die ich stieß, waren Typumwandlungen. Sie haben zum Beispiel eine Zahl als String und müssen damit rechnen. Genau dafür gibt es die parse-Methoden.
String text = "3";
int number = int.parse(text);Sieht einfach aus, oder? Ein wichtiger Punkt aber: Steht im String etwas anderes als eine Zahl (etwa „3a“), wirft das Programm einen Fehler. Deshalb sollten Sie bei Eingaben von Nutzern sicherheitshalber mit try-catch arbeiten.
Eine Situation aus der Praxis
Diese Situation begegnete mir, als ich das Alter von Nutzern abgefragt habe. Alles, was aus einem TextField kommt, ist ein String, aber ich musste mit dem Alter rechnen:
String userAge = "25";
int age = int.parse(userAge);
int futureAge = age + 5;
print("You will be $futureAge years old in 5 years");Statische Variablen – erst verwirrend, dann klar
Als ich zum ersten Mal über static las, war mir nicht ganz klar, wofür das gut ist. Nach ein paar Beispielen habe ich die Logik aber verstanden.
Statische Variablen sind Variablen, die wir direkt nutzen können, ohne ein Objekt der Klasse zu erzeugen. Stellen Sie es sich so vor: Es gibt eine Fabrik, und diese Fabrik hat einen Zähler. Bei jeder Produktion erhöht sich der Zähler. Dieser Zähler muss einen einzigen Wert für die gesamte Fabrik haben, nicht je Produkt einen eigenen.
class A {
static late int value;
static final int val = 3;
}
void main() {
// Direct use without creating object
int newValue = A.val;
print("Constant value: $newValue");
// We can change static variable
A.value = 5;
int newValue2 = A.value;
print("New value: $newValue2");
}Der Unterschied zwischen final und static
Auch das musste ich lernen: Bei final können Sie die Variable nach der ersten Zuweisung nicht mehr ändern. Sie verhält sich also wie eine Konstante. Hätte ich im Beispiel oben versucht, die Variable val zu ändern, hätte ich einen Fehler bekommen.
Warum verwenden wir static?
Nach dem, was ich recherchiert habe, sind statische Variablen in diesen Fällen sehr nützlich:
- Zähler: etwa wie viele Objekte erzeugt wurden
- Konstante Werte: etwa die Kreiszahl Pi oder ein Steuersatz
- Hilfsfunktionen: etwa mathematische Operationen
Wenn Sie zum Beispiel eine Rechner-Klasse bauen:
class Calculation {
static double add(double a, double b) {
return a + b;
}
static double subtract(double a, double b) {
return a - b;
}
}
void main() {
double result = Calculation.add(5, 3);
print("Result: $result"); // 8.0
}Sie müssen kein Objekt erzeugen, sondern nutzen es direkt über Calculation.add().
Was ich heute gelernt habe
Mein erster Tag mit Dart war recht produktiv. Typumwandlungen und statische Konzepte wirkten anfangs komplex, wurden mit der Praxis aber klar. Morgen sehe ich mir Enums und Composition an.
So hat meine Flutter-Reise begonnen. Ich hoffe, diese Notizen sind auch für Sie nützlich. Bei Fragen sehen wir uns in den Kommentaren!
Ressourcen
- Offizielle Dart-Dokumentation
- Meine eigenen Erfahrungen und Codeübungen
Kontaktieren Sie mich: