Package com.landawn.abacus.util
Class Builder<T>
java.lang.Object
com.landawn.abacus.util.Builder<T>
- Type Parameters:
T
-
- Direct Known Subclasses:
Builder.BooleanListBuilder
,Builder.ByteListBuilder
,Builder.CharListBuilder
,Builder.CollectionBuilder
,Builder.DataSetBuilder
,Builder.DoubleListBuilder
,Builder.FloatListBuilder
,Builder.IntListBuilder
,Builder.LongListBuilder
,Builder.LongMultisetBuilder
,Builder.MapBuilder
,Builder.MultimapBuilder
,Builder.MultisetBuilder
,Builder.ShortListBuilder
,Builder.X
- Since:
- 0.8
- Author:
- haiyangl
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
The Class BooleanListBuilder.static final class
The Class ByteListBuilder.static final class
The Class CharListBuilder.static class
Builder.CollectionBuilder<T,
C extends Collection<T>> The Class CollectionBuilder.static final class
The Class ComparisonChain.static final class
The Class DataSetBuilder.static final class
The Class DoubleListBuilder.static final class
The Class EquivalenceChain.static final class
The Class FloatListBuilder.static final class
The Class HashCodeChain.static final class
The Class IntListBuilder.static final class
Builder.ListBuilder<T,
L extends List<T>> The Class ListBuilder.static final class
The Class LongListBuilder.static final class
The Class LongMultisetBuilder.static final class
The Class MapBuilder.static final class
The Class MultimapBuilder.static final class
The Class MultisetBuilder.static final class
The Class ShortListBuilder.static final class
The Class X. -
Method Summary
Modifier and TypeMethodDescriptionaccept
(Throwables.Consumer<? super T, E> consumer) <R,
E extends Exception>
Rapply
(Throwables.Function<? super T, ? extends R, E> func) static Builder.ComparisonBuilder
compare
(byte left, byte right) Compares twobyte
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.static Builder.ComparisonBuilder
compare
(char left, char right) Compares twochar
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.static Builder.ComparisonBuilder
compare
(double left, double right) Compares twodouble
values as specified byDouble.compare(double, double)
, if the result of this comparison chain has not already been determined.static Builder.ComparisonBuilder
compare
(float left, float right) Compares twofloat
values as specified byFloat.compare(float, float)
, if the result of this comparison chain has not already been determined.static Builder.ComparisonBuilder
compare
(int left, int right) Compares twoint
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.static Builder.ComparisonBuilder
compare
(long left, long right) Compares twolong
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.static Builder.ComparisonBuilder
compare
(short left, short right) Compares twoshort
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.static <T extends Comparable<? super T>>
Builder.ComparisonBuildercompare
(T left, T right) Compares two comparable objects as specified byComparable.compareTo(T)
, if the result of this comparison chain has not already been determined.static <T> Builder.ComparisonBuilder
compare
(T left, T right, Comparator<T> comparator) Compares two objects using a comparator, if the result of this comparison chain has not already been determined.static <T> Builder.ComparisonBuilder
compare
(T left, T right, BiFunction<? super T, ? super T, Integer> func) static Builder.ComparisonBuilder
compareFalseLess
(boolean left, boolean right) Compares twoboolean
values, consideringfalse
to be less thantrue
, if the result of this comparison chain has not already been determined.static <T extends Comparable<? super T>>
Builder.ComparisonBuildercompareNullBigger
(T left, T right) null
is bigger.static <T extends Comparable<? super T>>
Builder.ComparisonBuildercompareNullLess
(T left, T right) null
is smaller.static Builder.ComparisonBuilder
compareTrueLess
(boolean left, boolean right) Compares twoboolean
values, consideringtrue
to be less thanfalse
, if the result of this comparison chain has not already been determined.static Builder.EquivalenceBuilder
equals
(boolean left, boolean right) Compares twoboolean
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.static Builder.EquivalenceBuilder
equals
(byte left, byte right) Compares twobyte
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.static Builder.EquivalenceBuilder
equals
(char left, char right) Compares twochar
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.static Builder.EquivalenceBuilder
equals
(double left, double right) Compares twodouble
values as specified byDouble.compare(double, double)
, if the result of this equivalence chain has not already been determined.static Builder.EquivalenceBuilder
equals
(float left, float right) Compares twofloat
values as specified byFloat.compare(float, float)
, if the result of this equivalence chain has not already been determined.static Builder.EquivalenceBuilder
equals
(int left, int right) Compares twoint
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.static Builder.EquivalenceBuilder
equals
(long left, long right) Compares twolong
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.static Builder.EquivalenceBuilder
equals
(short left, short right) Compares twoshort
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.static Builder.EquivalenceBuilder
Compares two comparable objects as specified byCommonUtil.equals(Object, Object)
, if the result of this equivalence chain has not already been determined.static <T> Builder.EquivalenceBuilder
equals
(T left, T right, BiFunction<? super T, ? super T, Boolean> func) <E extends Exception>
u.Optional<T>filter
(Throwables.Predicate<? super T, E> predicate) static Builder.HashCodeBuilder
hash
(boolean value) Add the hash code of the specifiedvalue
to result.static Builder.HashCodeBuilder
hash
(byte value) Add the hash code of the specifiedvalue
to result.static Builder.HashCodeBuilder
hash
(char value) Add the hash code of the specifiedvalue
to result.static Builder.HashCodeBuilder
hash
(double value) Add the hash code of the specifiedvalue
to result.static Builder.HashCodeBuilder
hash
(float value) Add the hash code of the specifiedvalue
to result.static Builder.HashCodeBuilder
hash
(int value) Add the hash code of the specifiedvalue
to result.static Builder.HashCodeBuilder
hash
(long value) Add the hash code of the specifiedvalue
to result.static Builder.HashCodeBuilder
hash
(short value) Add the hash code of the specifiedvalue
to result.static Builder.HashCodeBuilder
Add the hash code of the specifiedvalue
to result.static <T> Builder.HashCodeBuilder
hash
(T value, ToIntFunction<? super T> func) map
(Throwables.Function<? super T, ? extends R, E> mapper) static final <T,
C extends Collection<T>>
Builder.CollectionBuilder<T,C> of
(C val) static final Builder.BooleanListBuilder
of
(BooleanList val) static final Builder.ByteListBuilder
static final Builder.CharListBuilder
static final Builder.DataSetBuilder
static final Builder.DoubleListBuilder
of
(DoubleList val) static final Builder.FloatListBuilder
static final Builder.IntListBuilder
static final Builder.LongListBuilder
static final <T> Builder.LongMultisetBuilder<T>
of
(LongMultiset<T> val) static final <T> Builder.MultisetBuilder<T>
static final Builder.ShortListBuilder
static final <T,
L extends List<T>>
Builder.ListBuilder<T,L> of
(L val) static final <K,
V, M extends Map<K, V>>
Builder.MapBuilder<K,V, M> of
(M val) static final <T> Builder<T>
of
(T val) stream()
val()
-
Method Details
-
of
- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
public static final <T,L extends List<T>> Builder.ListBuilder<T,L> of(L val) throws IllegalArgumentException - Type Parameters:
T
-L
-- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
public static final <T,C extends Collection<T>> Builder.CollectionBuilder<T,C> of(C val) throws IllegalArgumentException - Type Parameters:
T
-C
-- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
public static final <K,V, Builder.MapBuilder<K,M extends Map<K, V>> V, ofM> (M val) throws IllegalArgumentException - Type Parameters:
K
- the key typeV
- the value typeM
-- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
public static final <T> Builder.MultisetBuilder<T> of(Multiset<T> val) throws IllegalArgumentException - Type Parameters:
T
-- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
public static final <T> Builder.LongMultisetBuilder<T> of(LongMultiset<T> val) throws IllegalArgumentException - Type Parameters:
T
-- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
public static final <K,E, Builder.MultimapBuilder<K,V extends Collection<E>, M extends Multimap<K, E, V>> E, ofV, M> (M val) throws IllegalArgumentException - Type Parameters:
K
- the key typeE
-V
- the value typeM
-- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
- Type Parameters:
T
-- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
of
- Type Parameters:
T
-- Parameters:
val
-- Returns:
- Throws:
IllegalArgumentException
- if the specifiedval
isnull
.
-
val
-
map
public <R,E extends Exception> Builder<R> map(Throwables.Function<? super T, ? extends R, throws EE> mapper) - Type Parameters:
R
-E
-- Parameters:
mapper
-- Returns:
- Throws:
E
- the e
-
filter
public <E extends Exception> u.Optional<T> filter(Throwables.Predicate<? super T, E> predicate) throws E- Type Parameters:
E
-- Parameters:
predicate
-- Returns:
Optional
with the value ifpredicate
returns true, otherwise, return an emptyOptional
- Throws:
E
- the e
-
accept
- Type Parameters:
E
-- Parameters:
consumer
-- Returns:
- Throws:
E
- the e
-
apply
- Type Parameters:
R
-E
-- Parameters:
func
-- Returns:
- Throws:
E
- the e
-
stream
-
compare
Compares two comparable objects as specified byComparable.compareTo(T)
, if the result of this comparison chain has not already been determined.- Type Parameters:
T
-- Parameters:
left
-right
-- Returns:
ComparisonChain
-
compare
Compares two objects using a comparator, if the result of this comparison chain has not already been determined.- Type Parameters:
T
-- Parameters:
left
-right
-comparator
-- Returns:
ComparisonChain
-
compare
public static <T> Builder.ComparisonBuilder compare(T left, T right, BiFunction<? super T, ? super T, Integer> func) - Type Parameters:
T
-- Parameters:
left
-right
-func
-- Returns:
-
compareNullLess
public static <T extends Comparable<? super T>> Builder.ComparisonBuilder compareNullLess(T left, T right) null
is smaller.- Type Parameters:
T
-- Parameters:
left
-right
-- Returns:
-
compareNullBigger
public static <T extends Comparable<? super T>> Builder.ComparisonBuilder compareNullBigger(T left, T right) null
is bigger.- Type Parameters:
T
-- Parameters:
left
-right
-- Returns:
-
compareFalseLess
Compares twoboolean
values, consideringfalse
to be less thantrue
, if the result of this comparison chain has not already been determined.- Parameters:
left
-right
-- Returns:
ComparisonChain
-
compareTrueLess
Compares twoboolean
values, consideringtrue
to be less thanfalse
, if the result of this comparison chain has not already been determined.- Parameters:
left
-right
-- Returns:
ComparisonChain
-
compare
Compares twochar
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.- Parameters:
left
-right
-- Returns:
ComparisonChain
-
compare
Compares twobyte
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.- Parameters:
left
-right
-- Returns:
ComparisonChain
-
compare
Compares twoshort
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.- Parameters:
left
-right
-- Returns:
ComparisonChain
-
compare
Compares twoint
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.- Parameters:
left
-right
-- Returns:
ComparisonChain
-
compare
Compares twolong
values as specified byCommonUtil.compare(boolean, boolean)
, if the result of this comparison chain has not already been determined.- Parameters:
left
-right
-- Returns:
ComparisonChain
-
compare
Compares twofloat
values as specified byFloat.compare(float, float)
, if the result of this comparison chain has not already been determined.- Parameters:
left
-right
-- Returns:
ComparisonChain
-
compare
Compares twodouble
values as specified byDouble.compare(double, double)
, if the result of this comparison chain has not already been determined.- Parameters:
left
-right
-- Returns:
ComparisonChain
-
equals
Compares two comparable objects as specified byCommonUtil.equals(Object, Object)
, if the result of this equivalence chain has not already been determined.- Parameters:
left
-right
-- Returns:
EquivalenceChain
-
equals
public static <T> Builder.EquivalenceBuilder equals(T left, T right, BiFunction<? super T, ? super T, Boolean> func) - Type Parameters:
T
-- Parameters:
left
-right
-func
-- Returns:
-
equals
Compares twoboolean
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.- Parameters:
left
-right
-- Returns:
EquivalenceChain
-
equals
Compares twochar
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.- Parameters:
left
-right
-- Returns:
EquivalenceChain
-
equals
Compares twobyte
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.- Parameters:
left
-right
-- Returns:
EquivalenceChain
-
equals
Compares twoshort
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.- Parameters:
left
-right
-- Returns:
EquivalenceChain
-
equals
Compares twoint
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.- Parameters:
left
-right
-- Returns:
EquivalenceChain
-
equals
Compares twolong
values as specified byleft == right
, if the result of this equivalence chain has not already been determined.- Parameters:
left
-right
-- Returns:
EquivalenceChain
-
equals
Compares twofloat
values as specified byFloat.compare(float, float)
, if the result of this equivalence chain has not already been determined.- Parameters:
left
-right
-- Returns:
EquivalenceChain
-
equals
Compares twodouble
values as specified byDouble.compare(double, double)
, if the result of this equivalence chain has not already been determined.- Parameters:
left
-right
-- Returns:
EquivalenceChain
-
hash
Add the hash code of the specifiedvalue
to result.- Parameters:
value
-- Returns:
- this
-
hash
- Type Parameters:
T
-- Parameters:
value
-func
-- Returns:
-
hash
Add the hash code of the specifiedvalue
to result.- Parameters:
value
-- Returns:
- this
-
hash
Add the hash code of the specifiedvalue
to result.- Parameters:
value
-- Returns:
- this
-
hash
Add the hash code of the specifiedvalue
to result.- Parameters:
value
-- Returns:
- this
-
hash
Add the hash code of the specifiedvalue
to result.- Parameters:
value
-- Returns:
- this
-
hash
Add the hash code of the specifiedvalue
to result.- Parameters:
value
-- Returns:
- this
-
hash
Add the hash code of the specifiedvalue
to result.- Parameters:
value
-- Returns:
- this
-
hash
Add the hash code of the specifiedvalue
to result.- Parameters:
value
-- Returns:
- this
-
hash
Add the hash code of the specifiedvalue
to result.- Parameters:
value
-- Returns:
- this
-