Wie kann ich den Typ (Klassennamen) eines Objekts in der Dart-Sprache bestimmen?
Ich möchte etwas wie folgt machen:
%Vor%Und was ist der zurückgegebene Werttyp? Muss es eine Schnur sein?
Die Spiegelbibliothek ist auf und ab und scheint sich im Moment schnell zu ändern, da das eine, was ich gefunden habe, einfach nicht wie gezeigt funktionierte.
Verwenden Sie die Operatoren is
und is!
wie folgt:
Aus der Dokumentation :
Die Operatoren
is
undis!
sind praktisch zum Überprüfen von Typen. Das Ergebnis vonobj is T
ist wahr, wennobj
die vonT
angegebene Schnittstelle implementiert. Zum Beispiel:obj is Object
ist immer wahr.
Verwenden Sie die Spiegel-API (siehe dieses Beispiel ):
%Vor% Kürzlich Object
hat runtimeType
getter bekommen. So können wir nun nicht nur den Objekttyp mit einem anderen Typ vergleichen, sondern auch den Klassennamen eines Objekts erhalten.
Wie in:
Darüber hinaus können Sie in der aktuellen Version von Dart toString
operation überspringen und runtimeType
des Objekts direkt mit dem Zieltyp vergleichen, wie in
oder
%Vor%Tags und Links class dart dart-mirrors