0Pricing
Dart Academy · Lektion

Generische Collections in der Praxis

List, Map und eigene Container typisieren

Generische Collections in der Praxis ist eine kostenlose Dart Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Dart Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Dart Academy-Kurs umfasst insgesamt 4 Lektionen.

Collections sind generisch

Darts alltägliche Collections sind alle generisch. List, Set und Map verwenden jeweils Typparameter, die festlegen, welche Inhalte sie aufnehmen. 📦

Eine List typisieren

Eine List verwendet einen Typparameter für ihre Elemente. List of String bedeutet, dass jedes Element ein String sein muss.

List<String> names = ['Ada', 'Linus'];

Ein Set typisieren

Ein Set funktioniert genauso und hält seine Elemente eindeutig. Set of int enthält ganze Zahlen ohne Duplikate.

Set<int> ids = {1, 2, 2, 3};

Eine Map typisieren

Eine Map verwendet zwei Typparameter: einen für Schlüssel und einen für Werte. Die Reihenfolge ist wichtig, der Schlüsseltyp steht zuerst.

Map<String, int> ages = {'Ada': 36};

Inferenz aus Literalen

Wenn Sie ein Literal schreiben, leitet Dart den Typ oft aus seinem Inhalt ab. Eine Liste mit Zahlen wird automatisch zu List of int.

var scores = [90, 85, 100];

Leere Literale annotieren

Ein leeres Literal bietet keine Grundlage für eine Ableitung. Geben Sie den Typ daher selbst an. Andernfalls wählt Dart möglicherweise einen unerwünschten Typ.

var queue = <String>[];

Elementtypen werden weitergegeben

Nach der Typisierung liefern Methoden den richtigen Elementtyp. Das Lesen aus einer List of String ergibt einen String, den Sie direkt verwenden können.

List<String> names = ['Ada'];
String first = names.first;

Generics verschachteln

Typparameter können so tief verschachtelt werden, wie Sie es benötigen. Eine Map von String zu List of int ist vollkommen gültig und wird vollständig geprüft.

Map<String, List<int>> grades = {
  'Ada': [90, 85]
};

Generics treffen auf Transformationen

Methoden wie map führen Typen durch eine Verarbeitungskette. Wenn Sie ints in ihre String-Darstellungen umwandeln, erhalten Sie ein Iterable of String.

var labels = [1, 2].map((n) => 'n=$n');

Benutzerdefinierte generische Container

Auch Ihre eigenen generischen Klassen fügen sich in dieses Modell ein. Ein Stack of T kann jeden Elementtyp speichern, den der Aufrufer auswählt.

class Stack<T> {
  final _items = <T>[];
  void push(T x) => _items.add(x);
}

Sicherheit durchgehend

Von der Deklaration über die Transformation bis zur Speicherung bleibt der Typ bekannt. Das ist der entscheidende Vorteil: Wiederverwendbarkeit und vollständige Prüfung auf dem gesamten Weg.

Schnelltest

Wie viele Typparameter verwendet eine Map?

Zusammenfassung

Sie haben List, Set und Map typisiert, sich auf Inferenz verlassen, leere Literale annotiert und Generics verschachtelt. Typen werden sicher durch jede Transformation weitergegeben. ✅

Häufig gestellte Fragen

Ist die Lektion „Generische Collections in der Praxis“ kostenlos?

Ja — der vollständige Text von „Generische Collections in der Praxis“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Dart Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Dart Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Generische Collections in der Praxis“?

List, Map und eigene Container typisieren Du übst Dart Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Dart Academy zu starten?

Keine Vorkenntnisse erforderlich. Dart Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Generische Collections in der Praxis“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Dart Academy-Lektion Code schreiben und ausführen?

Ja. Jede Dart Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Warum Generics dynamic überlegen sind
  2. Generische Klassen und Methoden
  3. Begrenzte Typparameter mit extends
  4. Generische Collections in der Praxis
← Zurück zu Dart Academy