sharin.unlinq
Class BasicEnumerable<T>

java.lang.Object
  extended by sharin.unlinq.BasicEnumerable<T>
All Implemented Interfaces:
Iterable<T>, Enumerable<T>
Direct Known Subclasses:
BasicGrouping

public class BasicEnumerable<T>
extends Object
implements Enumerable<T>


Constructor Summary
BasicEnumerable(Iterable<T> iterable)
           
 
Method Summary
<A> A
aggregate(A seed, Func2<A,T,A> func)
           
<A,R> R
aggregate(A seed, Func2<A,T,A> func, Func<A,R> resultSelector)
           
 T aggregate(Func2<T,T,T> func)
           
 Boolean all(Func<T,Boolean> predicate)
           
 Boolean any()
           
 Boolean any(Func<T,Boolean> predicate)
           
 double average()
           
 double average(Func<T,Integer> selector)
           
 double averageDouble()
           
 double averageDouble(Func<T,Double> selector)
           
 float averageFloat()
           
 float averageFloat(Func<T,Float> selector)
           
 double averageLong()
           
 double averageLong(Func<T,Long> selector)
           
<R> Enumerable<R>
cast(Class<R> resultClass)
           
 Enumerable<T> concat(Enumerable<T> second)
           
 boolean contains(Object o)
           
 int count()
           
 int count(Func<T,Boolean> predicate)
           
 Enumerable<T> defaultIfEmpty()
           
 Enumerable<T> defaultIfEmpty(T defaultValue)
           
 Enumerable<T> distinct()
           
 T elementAt(int index)
           
 T elementAtOrDefault(int index)
           
 T elementAtOrDefault(int index, T defaultValue)
           
static
<R> Enumerable<R>
empty()
           
 Enumerable<T> except(Enumerable<T> second)
           
 T first()
           
 T first(Func<T,Boolean> predicate)
           
 T firstOrDefault()
           
 T firstOrDefault(Func<T,Boolean> predicate)
           
 T firstOrDefault(Func<T,Boolean> predicate, T defaultValue)
           
 T firstOrDefault(T defaultValue)
           
static
<E> Enumerable<E>
from(E... objects)
           
static Enumerable<Integer> from(int... values)
           
static
<E> Enumerable<E>
from(Iterable<E> iterable)
           
static Enumerable<Boolean> fromBoolean(boolean... values)
           
static Enumerable<Byte> fromByte(byte... values)
           
static Enumerable<Character> fromChar(char... values)
           
static Enumerable<Double> fromDouble(double... values)
           
static Enumerable<Float> fromFloat(float... values)
           
static Enumerable<Long> fromLong(long... values)
           
static Enumerable<Short> fromShort(short... values)
           
<K> Enumerable<Grouping<K,T>>
groupBy(Func<T,K> keySelector)
           
<K,E> Enumerable<Grouping<K,E>>
groupBy(Func<T,K> keySelector, Func<T,E> elementSelector)
           
<K,E,R> Enumerable<R>
groupBy(Func<T,K> keySelector, Func<T,E> elementSelector, Func2<K,Enumerable<E>,R> resultSelector)
           
<K,R> Enumerable<R>
groupBy(Func<T,K> keySelector, Func2<K,Enumerable<T>,R> resultSelector)
           
<I,K,R> Enumerable<R>
groupJoin(Enumerable<I> inner, Func<T,K> outerKeySelector, Func<I,K> innerKeySelector, Func2<T,Enumerable<I>,R> resultSelector)
           
 Enumerable<T> intersect(Enumerable<T> second)
           
 Iterator<T> iterator()
           
<I,K,R> Enumerable<R>
join(Enumerable<I> inner, Func<T,K> outerKeySelector, Func<I,K> innerKeySelector, Func2<T,I,R> resultSelector)
           
 T last()
           
 T last(Func<T,Boolean> predicate)
           
 T lastOrDefault()
           
 T lastOrDefault(Func<T,Boolean> predicate)
           
 T lastOrDefault(Func<T,Boolean> predicate, T defaultValue)
           
 T lastOrDefault(T defaultValue)
           
 long longCount()
           
 long longCount(Func<T,Boolean> predicate)
           
 T max()
           
<R extends Comparable<R>>
R
max(Func<T,R> selector)
           
 T min()
           
<R extends Comparable<R>>
R
min(Func<T,R> selector)
           
<R> Enumerable<R>
ofType(Class<R> resultClass)
           
<K> OrderedEnumerable<T>
orderBy(Func<T,K> keySelector)
           
<K> OrderedEnumerable<T>
orderBy(Func<T,K> keySelector, Comparator<K> comparator)
           
<K> OrderedEnumerable<T>
orderByDescending(Func<T,K> keySelector)
           
<K> OrderedEnumerable<T>
orderByDescending(Func<T,K> keySelector, Comparator<K> comparator)
           
static Enumerable<Integer> range(int start, int count)
           
static
<R> Enumerable<R>
repeat(R element, int count)
           
 Enumerable<T> reverse()
           
<R> Enumerable<R>
select(Func<T,R> selector)
           
<R> Enumerable<R>
select(Func2<T,Integer,R> selector)
           
<C,R> Enumerable<R>
selectMany(Func<T,Enumerable<C>> collectionSelector, Func2<T,C,R> resultSelector)
           
<R> Enumerable<R>
selectMany(Func<T,Enumerable<R>> selector)
           
<C,R> Enumerable<R>
selectMany(Func2<T,Integer,Enumerable<C>> collectionSelector, Func2<T,C,R> resultSelector)
           
<R> Enumerable<R>
selectMany(Func2<T,Integer,Enumerable<R>> selector)
           
 Boolean sequenceEqual(Enumerable<T> second)
           
 T single()
           
 T single(Func<T,Boolean> predicate)
           
 T singleOrDefault()
           
 T singleOrDefault(Func<T,Boolean> predicate)
           
 T singleOrDefault(Func<T,Boolean> predicate, T defaultValue)
           
 T singleOrDefault(T defaultValue)
           
 Enumerable<T> skip(int count)
           
 Enumerable<T> skipWhile(Func<T,Boolean> predicate)
           
 Enumerable<T> skipWhile(Func2<T,Integer,Boolean> predicate)
           
 int sum()
           
 int sum(Func<T,Integer> selector)
           
 double sumDouble()
           
 double sumDouble(Func<T,Double> selector)
           
 float sumFloat()
           
 float sumFloat(Func<T,Float> selector)
           
 long sumLong()
           
 long sumLong(Func<T,Long> selector)
           
 Enumerable<T> take(int count)
           
 Enumerable<T> takeWhile(Func<T,Boolean> predicate)
           
 Enumerable<T> takeWhile(Func2<T,Integer,Boolean> predicate)
           
 Object[] toArray()
           
<R> R[]
toArray(Class<R> resultClass)
           
<K> Dictionary<K,T>
toDictionary(Func<T,K> keySelector)
           
<K,E> Dictionary<K,E>
toDictionary(Func<T,K> keySelector, Func<T,E> elementSelector)
           
 EnumerableList<T> toEnumerableList()
           
 List<T> toList()
           
<K> Map<K,List<T>>
toListMap(Func<T,K> keySelector)
           
<K,E> Map<K,List<E>>
toListMap(Func<T,K> keySelector, Func<T,E> elementSelector)
           
<K> Lookup<K,T>
toLookup(Func<T,K> keySelector)
           
<K,E> Lookup<K,E>
toLookup(Func<T,K> keySelector, Func<T,E> elementSelector)
           
<K> Map<K,T>
toMap(Func<T,K> keySelector)
           
<K,E> Map<K,E>
toMap(Func<T,K> keySelector, Func<T,E> elementSelector)
           
 Enumerable<T> union(Enumerable<T> second)
           
 Enumerable<T> where(Func<T,Boolean> predicate)
           
 Enumerable<T> where(Func2<T,Integer,Boolean> predicate)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BasicEnumerable

public BasicEnumerable(Iterable<T> iterable)
Method Detail

iterator

public Iterator<T> iterator()
Specified by:
iterator in interface Iterable<T>

from

public static <E> Enumerable<E> from(Iterable<E> iterable)

from

public static <E> Enumerable<E> from(E... objects)

fromBoolean

public static Enumerable<Boolean> fromBoolean(boolean... values)

fromByte

public static Enumerable<Byte> fromByte(byte... values)

fromChar

public static Enumerable<Character> fromChar(char... values)

fromShort

public static Enumerable<Short> fromShort(short... values)

from

public static Enumerable<Integer> from(int... values)

fromLong

public static Enumerable<Long> fromLong(long... values)

fromFloat

public static Enumerable<Float> fromFloat(float... values)

fromDouble

public static Enumerable<Double> fromDouble(double... values)

aggregate

public T aggregate(Func2<T,T,T> func)
Specified by:
aggregate in interface Enumerable<T>

aggregate

public <A> A aggregate(A seed,
                       Func2<A,T,A> func)
Specified by:
aggregate in interface Enumerable<T>

aggregate

public <A,R> R aggregate(A seed,
                         Func2<A,T,A> func,
                         Func<A,R> resultSelector)
Specified by:
aggregate in interface Enumerable<T>

all

public Boolean all(Func<T,Boolean> predicate)
Specified by:
all in interface Enumerable<T>

any

public Boolean any()
Specified by:
any in interface Enumerable<T>

any

public Boolean any(Func<T,Boolean> predicate)
Specified by:
any in interface Enumerable<T>

average

public double average()
Specified by:
average in interface Enumerable<T>

averageLong

public double averageLong()
Specified by:
averageLong in interface Enumerable<T>

averageFloat

public float averageFloat()
Specified by:
averageFloat in interface Enumerable<T>

averageDouble

public double averageDouble()
Specified by:
averageDouble in interface Enumerable<T>

average

public double average(Func<T,Integer> selector)
Specified by:
average in interface Enumerable<T>

averageLong

public double averageLong(Func<T,Long> selector)
Specified by:
averageLong in interface Enumerable<T>

averageFloat

public float averageFloat(Func<T,Float> selector)
Specified by:
averageFloat in interface Enumerable<T>

averageDouble

public double averageDouble(Func<T,Double> selector)
Specified by:
averageDouble in interface Enumerable<T>

cast

public <R> Enumerable<R> cast(Class<R> resultClass)
Specified by:
cast in interface Enumerable<T>

concat

public Enumerable<T> concat(Enumerable<T> second)
Specified by:
concat in interface Enumerable<T>

contains

public boolean contains(Object o)
Specified by:
contains in interface Enumerable<T>

count

public int count()
Specified by:
count in interface Enumerable<T>

count

public int count(Func<T,Boolean> predicate)
Specified by:
count in interface Enumerable<T>

defaultIfEmpty

public Enumerable<T> defaultIfEmpty()
Specified by:
defaultIfEmpty in interface Enumerable<T>

defaultIfEmpty

public Enumerable<T> defaultIfEmpty(T defaultValue)
Specified by:
defaultIfEmpty in interface Enumerable<T>

distinct

public Enumerable<T> distinct()
Specified by:
distinct in interface Enumerable<T>

elementAt

public T elementAt(int index)
Specified by:
elementAt in interface Enumerable<T>

elementAtOrDefault

public T elementAtOrDefault(int index)
Specified by:
elementAtOrDefault in interface Enumerable<T>

elementAtOrDefault

public T elementAtOrDefault(int index,
                            T defaultValue)
Specified by:
elementAtOrDefault in interface Enumerable<T>

empty

public static <R> Enumerable<R> empty()

except

public Enumerable<T> except(Enumerable<T> second)
Specified by:
except in interface Enumerable<T>

first

public T first()
Specified by:
first in interface Enumerable<T>

first

public T first(Func<T,Boolean> predicate)
Specified by:
first in interface Enumerable<T>

firstOrDefault

public T firstOrDefault()
Specified by:
firstOrDefault in interface Enumerable<T>

firstOrDefault

public T firstOrDefault(T defaultValue)
Specified by:
firstOrDefault in interface Enumerable<T>

firstOrDefault

public T firstOrDefault(Func<T,Boolean> predicate)
Specified by:
firstOrDefault in interface Enumerable<T>

firstOrDefault

public T firstOrDefault(Func<T,Boolean> predicate,
                        T defaultValue)
Specified by:
firstOrDefault in interface Enumerable<T>

groupBy

public <K> Enumerable<Grouping<K,T>> groupBy(Func<T,K> keySelector)
Specified by:
groupBy in interface Enumerable<T>

groupBy

public <K,R> Enumerable<R> groupBy(Func<T,K> keySelector,
                                   Func2<K,Enumerable<T>,R> resultSelector)
Specified by:
groupBy in interface Enumerable<T>

groupBy

public <K,E> Enumerable<Grouping<K,E>> groupBy(Func<T,K> keySelector,
                                               Func<T,E> elementSelector)
Specified by:
groupBy in interface Enumerable<T>

groupBy

public <K,E,R> Enumerable<R> groupBy(Func<T,K> keySelector,
                                     Func<T,E> elementSelector,
                                     Func2<K,Enumerable<E>,R> resultSelector)
Specified by:
groupBy in interface Enumerable<T>

groupJoin

public <I,K,R> Enumerable<R> groupJoin(Enumerable<I> inner,
                                       Func<T,K> outerKeySelector,
                                       Func<I,K> innerKeySelector,
                                       Func2<T,Enumerable<I>,R> resultSelector)
Specified by:
groupJoin in interface Enumerable<T>

intersect

public Enumerable<T> intersect(Enumerable<T> second)
Specified by:
intersect in interface Enumerable<T>

join

public <I,K,R> Enumerable<R> join(Enumerable<I> inner,
                                  Func<T,K> outerKeySelector,
                                  Func<I,K> innerKeySelector,
                                  Func2<T,I,R> resultSelector)
Specified by:
join in interface Enumerable<T>

last

public T last()
Specified by:
last in interface Enumerable<T>

last

public T last(Func<T,Boolean> predicate)
Specified by:
last in interface Enumerable<T>

lastOrDefault

public T lastOrDefault()
Specified by:
lastOrDefault in interface Enumerable<T>

lastOrDefault

public T lastOrDefault(T defaultValue)
Specified by:
lastOrDefault in interface Enumerable<T>

lastOrDefault

public T lastOrDefault(Func<T,Boolean> predicate)
Specified by:
lastOrDefault in interface Enumerable<T>

lastOrDefault

public T lastOrDefault(Func<T,Boolean> predicate,
                       T defaultValue)
Specified by:
lastOrDefault in interface Enumerable<T>

longCount

public long longCount()
Specified by:
longCount in interface Enumerable<T>

longCount

public long longCount(Func<T,Boolean> predicate)
Specified by:
longCount in interface Enumerable<T>

max

public T max()
Specified by:
max in interface Enumerable<T>

max

public <R extends Comparable<R>> R max(Func<T,R> selector)
Specified by:
max in interface Enumerable<T>

min

public T min()
Specified by:
min in interface Enumerable<T>

min

public <R extends Comparable<R>> R min(Func<T,R> selector)
Specified by:
min in interface Enumerable<T>

ofType

public <R> Enumerable<R> ofType(Class<R> resultClass)
Specified by:
ofType in interface Enumerable<T>

orderBy

public <K> OrderedEnumerable<T> orderBy(Func<T,K> keySelector)
Specified by:
orderBy in interface Enumerable<T>

orderBy

public <K> OrderedEnumerable<T> orderBy(Func<T,K> keySelector,
                                        Comparator<K> comparator)
Specified by:
orderBy in interface Enumerable<T>

orderByDescending

public <K> OrderedEnumerable<T> orderByDescending(Func<T,K> keySelector)
Specified by:
orderByDescending in interface Enumerable<T>

orderByDescending

public <K> OrderedEnumerable<T> orderByDescending(Func<T,K> keySelector,
                                                  Comparator<K> comparator)
Specified by:
orderByDescending in interface Enumerable<T>

range

public static Enumerable<Integer> range(int start,
                                        int count)

repeat

public static <R> Enumerable<R> repeat(R element,
                                       int count)

reverse

public Enumerable<T> reverse()
Specified by:
reverse in interface Enumerable<T>

select

public <R> Enumerable<R> select(Func<T,R> selector)
Specified by:
select in interface Enumerable<T>

select

public <R> Enumerable<R> select(Func2<T,Integer,R> selector)
Specified by:
select in interface Enumerable<T>

selectMany

public <R> Enumerable<R> selectMany(Func<T,Enumerable<R>> selector)
Specified by:
selectMany in interface Enumerable<T>

selectMany

public <C,R> Enumerable<R> selectMany(Func<T,Enumerable<C>> collectionSelector,
                                      Func2<T,C,R> resultSelector)
Specified by:
selectMany in interface Enumerable<T>

selectMany

public <R> Enumerable<R> selectMany(Func2<T,Integer,Enumerable<R>> selector)
Specified by:
selectMany in interface Enumerable<T>

selectMany

public <C,R> Enumerable<R> selectMany(Func2<T,Integer,Enumerable<C>> collectionSelector,
                                      Func2<T,C,R> resultSelector)
Specified by:
selectMany in interface Enumerable<T>

sequenceEqual

public Boolean sequenceEqual(Enumerable<T> second)
Specified by:
sequenceEqual in interface Enumerable<T>

single

public T single()
Specified by:
single in interface Enumerable<T>

single

public T single(Func<T,Boolean> predicate)
Specified by:
single in interface Enumerable<T>

singleOrDefault

public T singleOrDefault()
Specified by:
singleOrDefault in interface Enumerable<T>

singleOrDefault

public T singleOrDefault(T defaultValue)
Specified by:
singleOrDefault in interface Enumerable<T>

singleOrDefault

public T singleOrDefault(Func<T,Boolean> predicate)
Specified by:
singleOrDefault in interface Enumerable<T>

singleOrDefault

public T singleOrDefault(Func<T,Boolean> predicate,
                         T defaultValue)
Specified by:
singleOrDefault in interface Enumerable<T>

skip

public Enumerable<T> skip(int count)
Specified by:
skip in interface Enumerable<T>

skipWhile

public Enumerable<T> skipWhile(Func<T,Boolean> predicate)
Specified by:
skipWhile in interface Enumerable<T>

skipWhile

public Enumerable<T> skipWhile(Func2<T,Integer,Boolean> predicate)
Specified by:
skipWhile in interface Enumerable<T>

sum

public int sum()
Specified by:
sum in interface Enumerable<T>

sumLong

public long sumLong()
Specified by:
sumLong in interface Enumerable<T>

sumFloat

public float sumFloat()
Specified by:
sumFloat in interface Enumerable<T>

sumDouble

public double sumDouble()
Specified by:
sumDouble in interface Enumerable<T>

sum

public int sum(Func<T,Integer> selector)
Specified by:
sum in interface Enumerable<T>

sumLong

public long sumLong(Func<T,Long> selector)
Specified by:
sumLong in interface Enumerable<T>

sumFloat

public float sumFloat(Func<T,Float> selector)
Specified by:
sumFloat in interface Enumerable<T>

sumDouble

public double sumDouble(Func<T,Double> selector)
Specified by:
sumDouble in interface Enumerable<T>

take

public Enumerable<T> take(int count)
Specified by:
take in interface Enumerable<T>

takeWhile

public Enumerable<T> takeWhile(Func<T,Boolean> predicate)
Specified by:
takeWhile in interface Enumerable<T>

takeWhile

public Enumerable<T> takeWhile(Func2<T,Integer,Boolean> predicate)
Specified by:
takeWhile in interface Enumerable<T>

toArray

public Object[] toArray()
Specified by:
toArray in interface Enumerable<T>

toArray

public <R> R[] toArray(Class<R> resultClass)
Specified by:
toArray in interface Enumerable<T>

toList

public List<T> toList()
Specified by:
toList in interface Enumerable<T>

toEnumerableList

public EnumerableList<T> toEnumerableList()
Specified by:
toEnumerableList in interface Enumerable<T>

toListMap

public <K> Map<K,List<T>> toListMap(Func<T,K> keySelector)
Specified by:
toListMap in interface Enumerable<T>

toListMap

public <K,E> Map<K,List<E>> toListMap(Func<T,K> keySelector,
                                      Func<T,E> elementSelector)
Specified by:
toListMap in interface Enumerable<T>

toLookup

public <K> Lookup<K,T> toLookup(Func<T,K> keySelector)
Specified by:
toLookup in interface Enumerable<T>

toLookup

public <K,E> Lookup<K,E> toLookup(Func<T,K> keySelector,
                                  Func<T,E> elementSelector)
Specified by:
toLookup in interface Enumerable<T>

toMap

public <K> Map<K,T> toMap(Func<T,K> keySelector)
Specified by:
toMap in interface Enumerable<T>

toMap

public <K,E> Map<K,E> toMap(Func<T,K> keySelector,
                            Func<T,E> elementSelector)
Specified by:
toMap in interface Enumerable<T>

toDictionary

public <K> Dictionary<K,T> toDictionary(Func<T,K> keySelector)
Specified by:
toDictionary in interface Enumerable<T>

toDictionary

public <K,E> Dictionary<K,E> toDictionary(Func<T,K> keySelector,
                                          Func<T,E> elementSelector)
Specified by:
toDictionary in interface Enumerable<T>

union

public Enumerable<T> union(Enumerable<T> second)
Specified by:
union in interface Enumerable<T>

where

public Enumerable<T> where(Func<T,Boolean> predicate)
Specified by:
where in interface Enumerable<T>

where

public Enumerable<T> where(Func2<T,Integer,Boolean> predicate)
Specified by:
where in interface Enumerable<T>


Copyright © 2009 SHU. All Rights Reserved.