类 AbstractDataFrameImpl<T>
- java.lang.Object
-
- io.github.burukeyou.dataframe.iframe.AbstractCommonFrame<T>
-
- io.github.burukeyou.dataframe.iframe.AbstractWindowDataFrame<T>
-
- io.github.burukeyou.dataframe.iframe.AbstractDataFrameImpl<T>
-
- 类型参数:
T-
- 直接已知子类:
JDFrameImpl,SDFrameImpl
public abstract class AbstractDataFrameImpl<T> extends AbstractWindowDataFrame<T>
- 作者:
- caizhihao
-
-
字段概要
-
从类继承的字段 io.github.burukeyou.dataframe.iframe.AbstractWindowDataFrame
emptyWindow, window
-
从类继承的字段 io.github.burukeyou.dataframe.iframe.AbstractCommonFrame
defaultRoundingMode, defaultScale, fieldList, MSG, oldModeField
-
-
构造器概要
构造器 限定符 构造器 说明 protectedAbstractDataFrameImpl()
-
方法概要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 说明 <R> BigDecimalavg(java.util.function.Function<T,R> function)average the values of the fieldprotected <F> List<String>buildFieldList(F f)<R> List<R>col(java.util.function.Function<T,R> function)Get a column valueList<String>columns()Get column headerslongcount()get row countprotected <R> RgetApplyValue(java.util.function.Function<T,R> fun, T obj)protected <V extends Comparable<? super V>>
java.util.function.Function<List<T>,MaxMin<T>>getListGroupMaxMinFunction(java.util.function.Function<T,V> value)protected <V extends Comparable<? super V>>
java.util.function.Function<List<T>,MaxMin<V>>getListGroupMaxMinValueFunction(java.util.function.Function<T,V> value)protected <V extends Comparable<? super V>>
java.util.function.Function<List<T>,T>getListMaxFunction(java.util.function.Function<T,V> value)protected <V extends Comparable<? super V>>
java.util.function.Function<List<T>,T>getListMinFunction(java.util.function.Function<T,V> value)protected <K> List<FI2<K,List<T>>>groupKey(java.util.function.Function<T,K> K)protected <K,J,H,V>
List<FI4<K,J,H,V>>groupKey(java.util.function.Function<T,K> K, java.util.function.Function<T,J> J, java.util.function.Function<T,H> H, java.util.stream.Collector<T,?,V> collectorType)三级分组protected <K,J,V>
List<FI3<K,J,V>>groupKey(java.util.function.Function<T,K> K, java.util.function.Function<T,J> J, java.util.stream.Collector<T,?,V> tBigDecimalCollector)二级分组protected <K,V>
List<FI2<K,V>>groupKey(java.util.function.Function<T,K> K, java.util.stream.Collector<T,?,V> tBigDecimalCollector)一级分组protected <K,J,V extends Comparable<V>>
Map<K,Map<J,T>>groupToMap(java.util.function.Function<T,K> key, java.util.function.Function<T,J> key2, java.util.function.Function<List<T>,T> getListMaxFunction)Thead()Get the first elementList<T>head(int n)Get the first n elementsIterator<T>iterator()protected <R,K>
List<R>joinList(IFrame<K> other, JoinOn<T,K> on, Join<T,K,R> join)protected <R,K>
List<R>leftJoinList(IFrame<K> other, JoinOn<T,K> on, Join<T,K,R> join)<R extends Comparable<R>>
Tmax(java.util.function.Function<T,R> function)Finding the maximum element<R extends Comparable<? super R>>
MaxMin<T>maxMin(java.util.function.Function<T,R> function)Finding the maximum and minimum element<R extends Comparable<? super R>>
MaxMin<R>maxMinValue(java.util.function.Function<T,R> function)Finding the maximum and minimum value<R extends Comparable<? super R>>
RmaxValue(java.util.function.Function<T,R> function)Finding the maximum valueprotected static <C> List<C>mergeCollection(Collection<List<C>> values)<R extends Comparable<R>>
Tmin(java.util.function.Function<T,R> function)Finding the minimum element<R extends Comparable<? super R>>
RminValue(java.util.function.Function<T,R> function)Finding the minimum valueList<T>page(int page, int pageSize)Get paginated dataprotected static <T,C>
List<T>replenish(List<T> itemDTOList, java.util.function.Function<T,C> collectDim, List<C> allDim, java.util.function.Function<C,T> getEmptyObject)protected static <T,G,C>
List<T>replenish(List<T> itemDTOList, java.util.function.Function<T,G> groupDim, java.util.function.Function<T,C> collectDim, ReplenishFunction<G,C,T> getEmptyObject)static <T,G,C>
List<T>replenish(List<T> itemDTOList, java.util.function.Function<T,G> groupDim, java.util.function.Function<T,C> collectDim, List<C> allDim, ReplenishFunction<G,C,T> getEmptyObject)分组计算差集, 然后将差集补充到该分组内 将原始集合(itemDTOList) 按照groupDim维度进分组, 然后将每个分组内的所有collectDim字段进行汇总 汇总后 与 allAbscissa进行计算差集,这些差集就是需要补充的条目, 然后将这些差集按照getEmptyObject逻辑生成空对象添加到该分组内protected <R,K>
List<R>rightJoinList(IFrame<K> other, JoinOn<T,K> on, Join<T,K,R> join)voidshow()print the 10 row to the consolevoidshow(int n)print the n row to the console<R> java.util.stream.Stream<T>streamFilterNull(java.util.function.Function<T,R> function)List<T>subList(Integer startIndex, Integer endIndex)Get elements within the scope.<R> BigDecimalsum(java.util.function.Function<T,R> function)=========================== 汇总相关 =====================================Ttail()Get the last elementList<T>tail(int n)Get the last n elements<R extends Comparable<R>>
java.util.stream.Stream<T>whereBetweenLStream(java.util.function.Function<T,R> function, R start, R end)<R extends Comparable<R>>
java.util.stream.Stream<T>whereBetweenNStream(java.util.function.Function<T,R> function, R start, R end)<R extends Comparable<R>>
java.util.stream.Stream<T>whereBetweenRStream(java.util.function.Function<T,R> function, R start, R end)<R extends Comparable<R>>
java.util.stream.Stream<T>whereBetweenStream(java.util.function.Function<T,R> function, R start, R end)<R> java.util.stream.Stream<T>whereEqStream(java.util.function.Function<T,R> function, R value)<R extends Comparable<R>>
java.util.stream.Stream<T>whereGeStream(java.util.function.Function<T,R> function, R value)<R extends Comparable<R>>
java.util.stream.Stream<T>whereGtStream(java.util.function.Function<T,R> function, R value)<R> java.util.stream.Stream<T>whereInStream(java.util.function.Function<T,R> function, List<R> list)<R extends Comparable<R>>
java.util.stream.Stream<T>whereLeStream(java.util.function.Function<T,R> function, R value)<R> java.util.stream.Stream<T>whereLikeLeftStream(java.util.function.Function<T,R> function, R value)<R> java.util.stream.Stream<T>whereLikeRightStream(java.util.function.Function<T,R> function, R value)<R> java.util.stream.Stream<T>whereLikeStream(java.util.function.Function<T,R> function, R value)<R extends Comparable<R>>
java.util.stream.Stream<T>whereLtStream(java.util.function.Function<T,R> function, R value)<R extends Comparable<R>>
java.util.stream.Stream<T>whereNotBetweenNStream(java.util.function.Function<T,R> function, R start, R end)<R extends Comparable<R>>
java.util.stream.Stream<T>whereNotBetweenStream(java.util.function.Function<T,R> function, R start, R end)<R> java.util.stream.Stream<T>whereNotEqStream(java.util.function.Function<T,R> function, R value)<R> java.util.stream.Stream<T>whereNotInStream(java.util.function.Function<T,R> function, List<R> list)<R> java.util.stream.Stream<T>whereNotLikeStream(java.util.function.Function<T,R> function, R value)protected <R> java.util.stream.Stream<T>whereNotNullStream(java.util.function.Function<T,R> function)protected <R> java.util.stream.Stream<T>whereNullStream(java.util.function.Function<T,R> function)-
从类继承的方法 io.github.burukeyou.dataframe.iframe.AbstractWindowDataFrame
dfsFindWindow, getBigDecimalValue, getFirstSlidingWindow, getIndexRange, isAllRow, isInRange, overAbject, slidingWindowAvg, slidingWindowForMaxValue, slidingWindowForMinValue, slidingWindowSum, updateSlidingWindowMaxQueue, updateSlidingWindowMinQueue, windowFunctionForAvg, windowFunctionForCount, windowFunctionForCumeDist, windowFunctionForDenseRank, windowFunctionForLag, windowFunctionForLead, windowFunctionForMaxValue, windowFunctionForMinValue, windowFunctionForNthValue, windowFunctionForNtile, windowFunctionForPercentRank, windowFunctionForRank, windowFunctionForRowNumber, windowFunctionForSum
-
从类继承的方法 io.github.burukeyou.dataframe.iframe.AbstractCommonFrame
bigDecimalToClassValue, buildPrintDataArr, getOldRoundingMode, getSuperClassActualTypeArguments, getSuperInterfaceActualTypeArguments, initDefaultScale, rankingSameAsc, rankingSameAsc, transmitMember
-
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
从接口继承的方法 io.github.burukeyou.dataframe.iframe.IFrame
addRankCol, addRankCol, addRowNumberCol, addRowNumberCol, addRowNumberCol, addRowNumberCol, append, countDistinct, countDistinct, cut, cutFirst, cutFirstRank, cutLast, cutPage, defaultScale, defaultScale, distinct, distinct, distinct, forEachDo, from, group, groupByAvg, groupByAvg, groupByAvg, groupByCount, groupByCount, groupByCount, groupByMax, groupByMax, groupByMaxMin, groupByMaxMin, groupByMaxMinValue, groupByMaxMinValue, groupByMaxValue, groupByMaxValue, groupByMin, groupByMin, groupByMinValue, groupByMinValue, groupBySum, groupBySum, groupBySum, groupBySumCount, groupBySumCount, join, join, leftJoin, leftJoin, map, mapPercent, mapPercent, partition, replenish, replenish, replenish, rightJoin, rightJoin, sortAsc, sortAsc, sortDesc, sortDesc, stream, toLists, union, where, whereBetween, whereBetweenL, whereBetweenN, whereBetweenR, whereEq, whereGe, whereGt, whereIn, whereLe, whereLike, whereLikeLeft, whereLikeRight, whereLt, whereNotBetween, whereNotBetweenN, whereNotEq, whereNotIn, whereNotLike, whereNotNull, whereNotTrue, whereNull, whereTrue
-
从接口继承的方法 java.lang.Iterable
forEach, spliterator
-
-
-
-
方法详细资料
-
whereNullStream
protected <R> java.util.stream.Stream<T> whereNullStream(java.util.function.Function<T,R> function)
-
whereNotNullStream
protected <R> java.util.stream.Stream<T> whereNotNullStream(java.util.function.Function<T,R> function)
-
whereBetweenStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereBetweenStream(java.util.function.Function<T,R> function, R start, R end)
-
whereBetweenNStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereBetweenNStream(java.util.function.Function<T,R> function, R start, R end)
-
whereBetweenRStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereBetweenRStream(java.util.function.Function<T,R> function, R start, R end)
-
whereBetweenLStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereBetweenLStream(java.util.function.Function<T,R> function, R start, R end)
-
whereNotBetweenStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereNotBetweenStream(java.util.function.Function<T,R> function, R start, R end)
-
whereNotBetweenNStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereNotBetweenNStream(java.util.function.Function<T,R> function, R start, R end)
-
whereInStream
public <R> java.util.stream.Stream<T> whereInStream(java.util.function.Function<T,R> function, List<R> list)
-
whereNotInStream
public <R> java.util.stream.Stream<T> whereNotInStream(java.util.function.Function<T,R> function, List<R> list)
-
whereEqStream
public <R> java.util.stream.Stream<T> whereEqStream(java.util.function.Function<T,R> function, R value)
-
whereNotEqStream
public <R> java.util.stream.Stream<T> whereNotEqStream(java.util.function.Function<T,R> function, R value)
-
whereGtStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereGtStream(java.util.function.Function<T,R> function, R value)
-
whereGeStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereGeStream(java.util.function.Function<T,R> function, R value)
-
whereLtStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereLtStream(java.util.function.Function<T,R> function, R value)
-
whereLeStream
public <R extends Comparable<R>> java.util.stream.Stream<T> whereLeStream(java.util.function.Function<T,R> function, R value)
-
whereLikeStream
public <R> java.util.stream.Stream<T> whereLikeStream(java.util.function.Function<T,R> function, R value)
-
whereNotLikeStream
public <R> java.util.stream.Stream<T> whereNotLikeStream(java.util.function.Function<T,R> function, R value)
-
whereLikeLeftStream
public <R> java.util.stream.Stream<T> whereLikeLeftStream(java.util.function.Function<T,R> function, R value)
-
whereLikeRightStream
public <R> java.util.stream.Stream<T> whereLikeRightStream(java.util.function.Function<T,R> function, R value)
-
sum
public <R> BigDecimal sum(java.util.function.Function<T,R> function)
=========================== 汇总相关 =====================================- 参数:
function- the field
-
avg
public <R> BigDecimal avg(java.util.function.Function<T,R> function)
从接口复制的说明:IFrameaverage the values of the field- 参数:
function- the field
-
maxMinValue
public <R extends Comparable<? super R>> MaxMin<R> maxMinValue(java.util.function.Function<T,R> function)
从接口复制的说明:IFrameFinding the maximum and minimum value- 参数:
function- the field
-
maxMin
public <R extends Comparable<? super R>> MaxMin<T> maxMin(java.util.function.Function<T,R> function)
从接口复制的说明:IFrameFinding the maximum and minimum element- 参数:
function- the field
-
maxValue
public <R extends Comparable<? super R>> R maxValue(java.util.function.Function<T,R> function)
从接口复制的说明:IFrameFinding the maximum value- 参数:
function- the field
-
max
public <R extends Comparable<R>> T max(java.util.function.Function<T,R> function)
从接口复制的说明:IFrameFinding the maximum element- 参数:
function- the field
-
minValue
public <R extends Comparable<? super R>> R minValue(java.util.function.Function<T,R> function)
从接口复制的说明:IFrameFinding the minimum value- 参数:
function- the field
-
min
public <R extends Comparable<R>> T min(java.util.function.Function<T,R> function)
从接口复制的说明:IFrameFinding the minimum element- 参数:
function- the field
-
count
public long count()
从接口复制的说明:IFrameget row count
-
groupKey
protected <K,V> List<FI2<K,V>> groupKey(java.util.function.Function<T,K> K, java.util.stream.Collector<T,?,V> tBigDecimalCollector)
一级分组- 参数:
K- 一级分组KtBigDecimalCollector- 聚合方式
-
groupKey
protected <K,J,V> List<FI3<K,J,V>> groupKey(java.util.function.Function<T,K> K, java.util.function.Function<T,J> J, java.util.stream.Collector<T,?,V> tBigDecimalCollector)
二级分组- 参数:
K- 一级分组KJ- 二级分组KtBigDecimalCollector- 聚合方式
-
groupKey
protected <K,J,H,V> List<FI4<K,J,H,V>> groupKey(java.util.function.Function<T,K> K, java.util.function.Function<T,J> J, java.util.function.Function<T,H> H, java.util.stream.Collector<T,?,V> collectorType)
三级分组- 参数:
K- 一级分组KJ- 二级分组KH- 三级分组KcollectorType- 聚合方式
-
groupToMap
protected <K,J,V extends Comparable<V>> Map<K,Map<J,T>> groupToMap(java.util.function.Function<T,K> key, java.util.function.Function<T,J> key2, java.util.function.Function<List<T>,T> getListMaxFunction)
-
getListMaxFunction
protected <V extends Comparable<? super V>> java.util.function.Function<List<T>,T> getListMaxFunction(java.util.function.Function<T,V> value)
-
getListMinFunction
protected <V extends Comparable<? super V>> java.util.function.Function<List<T>,T> getListMinFunction(java.util.function.Function<T,V> value)
-
getListGroupMaxMinValueFunction
protected <V extends Comparable<? super V>> java.util.function.Function<List<T>,MaxMin<V>> getListGroupMaxMinValueFunction(java.util.function.Function<T,V> value)
-
getListGroupMaxMinFunction
protected <V extends Comparable<? super V>> java.util.function.Function<List<T>,MaxMin<T>> getListGroupMaxMinFunction(java.util.function.Function<T,V> value)
-
streamFilterNull
public <R> java.util.stream.Stream<T> streamFilterNull(java.util.function.Function<T,R> function)
-
col
public <R> List<R> col(java.util.function.Function<T,R> function)
从接口复制的说明:IFrameGet a column value
-
page
public List<T> page(int page, int pageSize)
从接口复制的说明:IFrameGet paginated data- 参数:
page- The current page number is considered as the first page, regardless of whether it is passed as 0 or 1pageSize- page size
-
show
public void show()
从接口复制的说明:IFrameprint the 10 row to the console
-
show
public void show(int n)
从接口复制的说明:IFrameprint the n row to the console
-
leftJoinList
protected <R,K> List<R> leftJoinList(IFrame<K> other, JoinOn<T,K> on, Join<T,K,R> join)
-
rightJoinList
protected <R,K> List<R> rightJoinList(IFrame<K> other, JoinOn<T,K> on, Join<T,K,R> join)
-
subList
public List<T> subList(Integer startIndex, Integer endIndex)
从接口复制的说明:IFrameGet elements within the scope. [startIndex,endIndex]
-
replenish
protected static <T,C> List<T> replenish(List<T> itemDTOList, java.util.function.Function<T,C> collectDim, List<C> allDim, java.util.function.Function<C,T> getEmptyObject)
-
replenish
public static <T,G,C> List<T> replenish(List<T> itemDTOList, java.util.function.Function<T,G> groupDim, java.util.function.Function<T,C> collectDim, List<C> allDim, ReplenishFunction<G,C,T> getEmptyObject)
分组计算差集, 然后将差集补充到该分组内 将原始集合(itemDTOList) 按照groupDim维度进分组, 然后将每个分组内的所有collectDim字段进行汇总 汇总后 与 allAbscissa进行计算差集,这些差集就是需要补充的条目, 然后将这些差集按照getEmptyObject逻辑生成空对象添加到该分组内- 类型参数:
T- 原始集合的类型G- 分组的类型C- 组内收集的类型- 参数:
itemDTOList- 原始集合groupDim- 分组的维度字段collectDim- 组内收集的数据字段allDim- 组内需要展示的所有维度getEmptyObject- 生成空对象的逻辑- 返回:
- 补充后的集合
-
replenish
protected static <T,G,C> List<T> replenish(List<T> itemDTOList, java.util.function.Function<T,G> groupDim, java.util.function.Function<T,C> collectDim, ReplenishFunction<G,C,T> getEmptyObject)
-
mergeCollection
protected static <C> List<C> mergeCollection(Collection<List<C>> values)
-
-