for ( Element e : meineListe ) {
// mach etwas Intelligentes mit e
}
meineListe_ist_jetzt_eine_Sequence.each(
new IntelligenteVerarbeitungVonE() );
meineListe_ist_jetzt_eine_Sequence.each(
new Callable1<Element, Object>() {
@Override
public Object call(Element e) {
return null; // TODO mach etwas Intelligentes mit e
}
}
);
List ergebnisListe = ...;
for ( Kunde k : kundenliste ) {
if ( k.istVIPKunde() ) {
// ...
ergebnisListe.add( ... );
}
}
return ergebnisListe;
return kundenlist e.filter( istVIPKunde )
.map(intelligenteVIPVerabeitung );
sequence.<funktion>( ... )
<funktion>( JavaCollection, ... ).
return map( kundenliste, toGenericMap() )
.sortBy( comparatorOnKeys( "umsatz" ) )
.take( 10 )
.sortBy( comparatorOnKeys("name", "kundenNr") );
Pair<Sequence<Kunde>, Sequence<Kunde>> partitionen =
kundenliste.partition( istVIPKunde() );
partitionen.first().each( spezielleVIPBehandlung() );
abZurSpamFarm( partitionen.second() );
zip( iterate( increment(), 1), kundenliste );
[1, Kunde@Instanz1], [2, Kunde@Instanz2], [3, Kunde@Instanz3]
try (StopWatch watch = new StopWatch("Sequentially", System.out)) {
sequence(1,2,3).map(veryLongRunnningFunction)
.forAll(theYesPredicate);
}
try (StopWatch watch = new StopWatch("Concurrently", System.out)) {
sequence(1,2,3).mapConcurrently(veryLongRunnningFunction)
.forAll(theYesPredicate);
}
StopWatch 'Sequentially' took 3003395000 ns
StopWatch 'Concurrently' took 1004120000 ns
java -javaagent:enumerable-java-<version>.jar ...
Fn1 square = λ( n, n * n);
Fn1 square = new Fn1() {
public Object call(Object arg) {
return (Integer) arg * (Integer) arg;
}
};
sequence(1,2,3,4,5).map( λ( n, n * n) );
Sequence vipKunden =
kundenliste.filter( λ(obj, ((Kunde) obj).istVIPKunde() ) );