XTend For-Loop-Unterstützung und Hinzufügen von Bereichsunterstützung

8

Ich kann anscheinend keine großartige Möglichkeit finden, das Folgende in Xtend auszudrücken, ohne auf eine while-Schleife zurückzugreifen:

%Vor%

Also, ich denke meine Frage besteht aus zwei Teilen:

  • Gibt es einen besseren Weg, um das oben genannte zu tun? Ich habe in ihrer Dokumentation nichts vielversprechendes gesehen
  • Ein großer Teil der Funktionen, die die Sprache hat, sind nur Xtend-Bibliothekserweiterungen (und sie sind großartig!). Gibt es range() Funktionalität à la Python, von der ich nichts weiß?

Ich habe meine eigene Rolle gerollt und etwas wie das Folgende bekommen:

%Vor%     
Bface 26.08.2012, 01:28
quelle

6 Antworten

15

Der genaue Ersatz für

%Vor%

ist

%Vor%

Beachten Sie den exklusiven Bereichsoperator: ..<

    
rzymek 16.05.2013, 07:13
quelle
13

Sie können es auch idiomatisch mit

machen %Vor%

Sehr neu für Xtend, aber man macht das Programmieren auf dem jvm großartig.

    
Delaney 02.02.2013 05:45
quelle
5

Für mich bedeutet ein bereichsbasierter forEach , dass der Bereich irgendwie sinnvoll ist. Für eine bestimmte Anzahl von Wiederholungen ohne Iterationsvariable finde ich, dass Rubys times -Schleife die Absicht deutlicher ausdrückt:

%Vor%

Leider ist es kein Teil von IntegerExtensions , aber die Implementierung ist trivial:

%Vor%     
Doval 05.08.2013 18:45
quelle
4

Heh, ich habe die Antwort ein wenig später gefunden:

%Vor%     
Bface 26.08.2012 02:13
quelle
3

Seit Xtend 2.6 unterstützen wir auch die "traditionelle" for-Schleife, genau wie in Java .

    
Stefan Oehme 16.06.2014 06:44
quelle
3

Es gibt tatsächlich eine Version von forEach() , die ein Lambda mit zwei Parametern akzeptiert. Es ist nützlich, wenn Sie innerhalb der Schleife auf den Iterationsindex zugreifen müssen.

%Vor%

druckt:

%Vor%     
Viliam Simko 06.11.2014 18:19
quelle

Tags und Links