Brechen ein List
List<int> example = [ 1, 2, 3 ];
for (int value in example) {
if (value == 2) {
break;
}
}
Brechen ein Map
Wenn Sie mit einem Map
es zu tun Sie nicht einfach einen Iterator aus der angegebenen Karte bekommen, aber Sie können Verwenden Sie immer noch for
, indem Sie sie entweder auf die Werte oder die Schlüssel anwenden. Da Sie manchmal die Kombination beider Schlüssel und Werte könnten benötigen, ist hier ein Beispiel:
Map<String, int> example = { 'A': 1, 'B': 2, 'C': 3 };
for (String key in example.keys) {
if (example[key] == 2 && key == 'B') {
break;
}
}
Beachten Sie, dass eine Karte unbedingt sie Schlüssel nicht haben als [ 'A', 'B', 'C' ]
eine LinkedHashMap verwenden, wenn Sie das wollen. Wenn Sie nur die Werte möchten, tun Sie einfach example.values
statt example.keys
.
Alternativ, wenn Sie nur für ein Element suchen, können Sie alles vereinfachen zu:
List<int> example = [ 1, 2, 3 ];
int matched = example.firstMatching((e) => e == 2, orElse:() => null);
Was bedeutet "nicht funktioniert" bedeuten? Was macht es eigentlich? –
Es tut nichts. – Leksat
Wenn Sie sagen, dass dies in JavaScript funktioniert, meinen Sie in einer Bibliothek wie jQuery? Ich frage, weil es so aussieht, als ob der hier beschriebene Algorithmus bei einem Rückgabewert von "false" nicht bricht: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/forEach Überlegen Sie, ob Sie a Fehler, wenn Sie diese Funktion wünschen. –