In der letzten Lektion haben wir erklärt, wie man das erste Dart-Beispiel erstellt. Jetzt lernen wir, selbst ein Hello-World-Beispiel zu schreiben.
1 Hello World
- Jedes Dart-Programm benötigt eine top-level-Funktion
main(), von hier aus startet die Programmausführung - Funktionen ohne Rückgabewert werden mit
voidgekennzeichnet print()gibt Text in der Konsole aus
// Programmeinstiegspunkt
void main() {
print('Hello, World!');
}
Code-Sprache: Dart (dart)
Wir verwenden das Projekt aus der letzten Lektion als Beispiel. Öffne die Datei firstdart.dart unter C:\dartdemo\firstdart\bin
Ersetze den gesamten Inhalt der Datei durch den obigen Code

Öffne danach die cmd, navigiere zum Ordner C:\dartdemo\firstdart und führe den Befehl dart run aus
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
Hello, World!Code-Sprache: CSS (css)
2 Variablen (var automatische Typinferenz)
- Definiere Variablen mit
var: Dart erkennt den Typ automatisch anhand des zugewiesenen Werts, du musst den Typnamen nicht manuell schreiben - Unterstützt Strings, Ganzzahlen, Gleitkommazahlen, Listen und Dictionaries (Objekte)
Beispiel
// Programmeinstiegspunkt
void main() {
var name = 'Voyager 1'; // String Text
var year = 1977; // Ganzzahl int
var width = 3.7; // Gleitkommazahl double
var planets = ['Jupiter','Saturn']; // Liste List
var info = {
'tag': ['Saturn'],
'url': 'Bildadresse'
}; // Dictionary Map
}
Code-Sprache: Dart (dart)
Oben haben wir mehrere Variablen definiert. Eine Variable ist ein kleiner Speicherbereich zum Speichern von Daten, dem du einen Namen gibst. Mit diesem Namen kannst du den Speicherbereich einfach verwalten.
Theoretisch kann dieser Speicherbereich beliebige 0/1-Daten speichern, da alle Computerdaten aus Nullen und Einsen bestehen. Typen wie String oder int existieren, um das Auswerten der Daten zu vereinfachen: Erkennt der Compiler den Typ int, liest er die Daten als Ganzzahl.
Wenn du die oben definierten Variablen verarbeiten möchtest
// Programmeinstiegspunkt
void main() {
var name = 'Voyager 1'; // String Text
var year = 1977; // Ganzzahl int
var width = 3.7; // Gleitkommazahl double
var planets = ['Jupiter', 'Saturn']; // Liste List
var info = {
'tag': ['Saturn'],
'url': 'Bildadresse'
}; // Dictionary Map
// Beispiel für String-Verwendung
print('Sondenname: $name');
print('Namenslänge: ${name.length}');
print('Enthält "1"? ${name.contains('1')}');
// Beispiel für Ganzzahl-Verwendung
print('Startjahr: $year');
print('Vergangene Jahre: ${DateTime.now().year - year} Jahre');
// Beispiel für Gleitkommazahl-Verwendung
print('Sondenbreite: $width Meter');
print('Quadrat der Breite: ${width * width}');
// Beispiel für Listen-Verwendung
print('Zielplanetenliste: $planets');
planets.add('Uranus'); // Element hinzufügen
print('Aktualisierte Planetenliste: $planets');
print('Erstes Ziel: ${planets[0]}');
// Beispiel für Dictionary-Verwendung
print('Informations-Tags: ${info['tag']}');
print('Bildadresse: ${info['url']}');
info['status'] = 'Aktiv'; // Neues Schlüssel-Wert-Paar hinzufügen
print('Vollständige Informationen: $info');
}
Code-Sprache: PHP (php)
Hier wird formatierte Ausgabe verwendet, ein Thema, das wir noch nicht behandelt haben. Verstehe vorerst nur das Grundprinzip, wir lernen es später detailliert kennen.
3 Flusssteuerungsanweisungen (Bedingungen / Schleifen)
if else Bedingungsprüfung
Abhängig von der Bedingung in den Klammern nach if werden unterschiedliche Codeblöcke ausgeführt. Ist die Bedingung true (wahr), läuft der Code in den geschweiften Klammern nach if, ansonsten der Code bei else.

if (Bedingung) {
// Wird ausgeführt, wenn Bedingung true ist
} else {
// Wird ausgeführt, wenn Bedingung false ist
}Code-Sprache: JavaScript (javascript)
Beispiel: Prüfen, ob die Höchstgeschwindigkeit überschritten wurde
var speed = 25;
if (speed > 60) {
print('Geschwindigkeitsüberschreitung!');
} else {
print('Geschwindigkeit in Ordnung.');
}Code-Sprache: PHP (php)
Man kann auch mehrere Prüfungen hintereinander schalten
if (speed > 100) {
print('Gefährliche Geschwindigkeit!');
} else if (speed > 60) {
print('Etwas zu schnell.');
} else {
print('Sichere Fahrt.');
}Code-Sprache: PHP (php)
void main() {
var year = 1977;
if (year >= 2001) {
print('21. Jahrhundert');
} else if (year >= 1901) {
print('20. Jahrhundert');
}
}
Code-Sprache: Dart (dart)
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
20. JahrhundertCode-Sprache: CSS (css)
Array-Durchlauf mit for-in
In Dart ist die for‑in-Schleife eine kompakte Syntax zum Durchlaufen iterierbarer Objekte wie List oder Set.
Sie prüft, ob das Array oder die Liste ein nächstes Element hat: Falls ja, wird der Code in den geschweiften Klammern ausgeführt, sonst endet die Schleife und das Programm läuft weiter.
Syntax:
for (var item in collection) {
// Variable item verwenden
}Code-Sprache: JavaScript (javascript)

Beispiel
void main() {
var planets = ['Jupiter','Saturn'];
for (final item in planets) {
print(item);
}
}
Code-Sprache: Dart (dart)
Ausgabeergebnis
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
Jupiter
SaturnCode-Sprache: CSS (css)
Normale numerische for-Schleife
Die Schleife läuft von i=1 bis einschließlich 12 durch den Operator <=. Nach jedem print-Befehl springt das Programm zu i++.
void main() {
for (int i = 1; i <= 12; i++) {
print(i);
}
}Code-Sprache: JavaScript (javascript)

Ausgabeergebnis
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
1
2
3
4
5
6
7
8
9
10
11
12Code-Sprache: CSS (css)
- Zuerst wird int i = 1 einmal ausgeführt
- Dann prüft das Programm, ob die Bedingung i <=12 erfüllt ist
- Ist sie erfüllt, läuft print(i) und gibt 1 aus
- Anschließend kommt i++, i erhält den Wert 2
- Erneute Prüfung von i<=12: 2<=12 ist true, also wird 2 ausgegeben
- Wieder i++ und erneute Bedingungsprüfung
- …..
- Sobald i=13 wird, ist i<=12 nicht mehr wahr, die for-Schleife wird verlassen und der Restcode ausgeführt
Die Zeile int i=1; läuft nur einmal am Anfang, danach nie wieder. Ihr einziger Zweck ist die Initialisierung von i, man kann den Code auch so schreiben:
void main() {
int i = 1;
for (; i <= 12; i++) {
print(i);
}
}
Code-Sprache: Dart (dart)
4. while-Schleife
Die while-Schleife ähnelt der for-Schleife. In Dart wiederholt die while-Schleife einen Codeblock, solange die Bedingung wahr ist. Ihre Syntax ist sehr einfach:
while (Bedingung) {
// Schleifenkörper
}Code-Sprache: JavaScript (javascript)
Ausführungslogik:
- Zuerst prüfen, ob die Bedingung
trueist. - Ist sie wahr, wird der Schleifenkörper ausgeführt.
- Nach dem Schleifenkörper wird die Bedingung erneut geprüft.
- Wird die Bedingung
false, endet die Schleife.
Damit die Bedingung irgendwann false wird, musst du im Schleifenkörper eine Variable verändern. Änderst du keine Variable, entsteht eine Endlosschleife, die niemals stoppt.
var year = 2010;
while(year < 2016){
year += 1;
}
Code-Sprache: JavaScript (javascript)
Die Ausführungsschritte lassen sich wie folgt aufteilen 👇
Initialisierungsphase
- Variable
yeardefinieren, Anfangswert2010.
Bedingungsprüfphase
- Prüfen, ob
year < 2016wahr ist. - Wahr → Eintritt in Schleifenkörper; Falsch → Verlassen der Schleife.
Ausführung des Schleifenkörpers
- Ausführen von
year += 1, alsoyear = year + 1. - Bei jedem Schleifendurchlauf erhöht sich
yearum 1.
Wiederholte Prüfphase
- Nochmalige Prüfung der Bedingung
year < 2016. - Solange
yearvon 2010 bis 2015 reicht, ist die Bedingung wahr. - Erreicht
yearden Wert 2016, ist die Bedingung falsch und die Schleife endet.
Endphase
- Nach Ende der Schleife hat
yearden Endwert 2016.
Diese Schleife läuft insgesamt 6 Mal (von 2010 bis 2015), jedes Mal wird year um 1 erhöht, bis die Bedingung nicht mehr zutrifft. Achte darauf: Wenn du den Wert von year nicht im Schleifenkörper änderst, entsteht eine Endlosschleife.