- java.lang.Object
-
- java.util.LongSummaryStatistics
-
- すべての実装されたインタフェース:
IntConsumer
,LongConsumer
public class LongSummaryStatistics extends Object implements LongConsumer, IntConsumer
カウント数、最小、最大、合計、平均などの統計情報を収集するための状態オブジェクト。このクラスは、streamsを扱う(必須ではないが)ために作られたものです。 たとえば、以下を使用してlongのストリームのサマリー統計を計算できます。
LongSummaryStatistics stats = longStream.collect(LongSummaryStatistics::new, LongSummaryStatistics::accept, LongSummaryStatistics::combine);
LongSummaryStatistics
は、streamのreductionターゲットとして使用できます。 次に例を示します。LongSummaryStatistics stats = people.stream() .collect(Collectors.summarizingLong(Person::getAge));
- 実装上の注意:
- この実装はスレッドに対して安全ではありません。 ただし、並列ストリームで
Collectors.summarizingLong()
を使用することは安全です。なぜなら、Stream.collect()
の並列実装では、安全で効率的な並列実行のために必要な結果の分割、分離、およびマージが行われるからです。この実装では、合計のオーバーフローをチェックしません。
- 導入されたバージョン:
- 1.8
-
-
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 LongSummaryStatistics()
ゼロ・カウント、ゼロ・サム、Long.MAX_VALUE
min、Long.MIN_VALUE
max、ゼロ平均を持つ空のインスタンスを構築します。LongSummaryStatistics(long count, long min, long max, long sum)
指定されたcount
、min
、max
、およびsum
で空でないインスタンスを構築します。
-
メソッドのサマリー
修飾子と型 メソッド 説明 void
accept(int value)
新しいint
値をサマリー情報に記録します。void
accept(long value)
新しいlong
値をサマリー情報に記録します。void
combine(LongSummaryStatistics other)
別のLongSummaryStatistics
の状態をこれに結合します。double
getAverage()
記録された値の算術平均を返します。値が記録されていない場合は0を返します。long
getCount()
記録された値のカウントを返します。long
getMax()
記録された最大値を返します。値が記録されていない場合はLong.MIN_VALUE
を返します。long
getMin()
記録された最小値を返します。値が記録されていない場合はLong.MAX_VALUE
を返します。long
getSum()
記録された値の合計を返します。値が記録されていない場合は0を返します。String
toString()
デバッグに適しているこのオブジェクトの空ではない文字列表現を返します。-
クラス java.lang.Objectで宣言されたメソッド
clone、equals、finalize、getClass、hashCode、notify、notifyAll、wait、wait、wait
-
インタフェース java.util.function.IntConsumerで宣言されたメソッド
andThen
-
インタフェース java.util.function.LongConsumerで宣言されたメソッド
andThen
-
-
-
-
コンストラクタの詳細
-
LongSummaryStatistics
public LongSummaryStatistics()
ゼロ・カウント、ゼロ・サム、Long.MAX_VALUE
min、Long.MIN_VALUE
max、ゼロ平均を持つ空のインスタンスを構築します。
-
LongSummaryStatistics
public LongSummaryStatistics(long count, long min, long max, long sum) throws IllegalArgumentException
指定されたcount
、min
、max
、およびsum
で空でないインスタンスを構築します。count
がゼロの場合、残りの引数は無視され、空のインスタンスが構築されます。引数が矛盾する場合は、
IllegalArgumentException
がスローされます。 必要な一貫した議論条件は次のとおりです:count >= 0
min <= max
- APIの注:
- 引数の正しさの強化とは、
LongSummaryStatistics
ソース・インスタンスから取得した取得された記録値のセットが、ソース記録された値の算術オーバーフローのためにこのコンストラクタの引数の正当なセットでない可能性があることを意味します。 一貫した引数条件では、内部的に一貫性のないインスタンスの作成を防止するには十分ではありません。 このような状態の例は、:count
= 2,min
= 1,max
= 2,およびsum
= 0。 - パラメータ:
count
- 値の数min
- 最小値max
- 最大値sum
- すべての値の合計- 例外:
IllegalArgumentException
- 引数が矛盾する場合- 導入されたバージョン:
- 10
-
-
メソッドの詳細
-
accept
public void accept(int value)
新しいint
値をサマリー情報に記録します。- 定義:
accept
、インタフェース:IntConsumer
- パラメータ:
value
- 入力値
-
accept
public void accept(long value)
新しいlong
値をサマリー情報に記録します。- 定義:
accept
、インタフェース:LongConsumer
- パラメータ:
value
- 入力値
-
combine
public void combine(LongSummaryStatistics other)
別のLongSummaryStatistics
の状態をこれに結合します。- パラメータ:
other
- 別のLongSummaryStatistics
- 例外:
NullPointerException
-other
がnullである場合
-
getCount
public final long getCount()
記録された値のカウントを返します。- 戻り値:
- 値の数
-
getSum
public final long getSum()
記録された値の合計を返します。値が記録されていない場合は0を返します。- 戻り値:
- 値の合計。値がない場合はゼロ
-
getMin
public final long getMin()
記録された最小値を返します。値が記録されていない場合はLong.MAX_VALUE
を返します。- 戻り値:
- 最小値、ない場合は
Long.MAX_VALUE
-
getMax
public final long getMax()
記録された最大値を返します。値が記録されていない場合はLong.MIN_VALUE
を返します。- 戻り値:
- 最大値、ない場合は
Long.MIN_VALUE
-
getAverage
public final double getAverage()
記録された値の算術平均を返します。値が記録されていない場合は0を返します。- 戻り値:
- 値の算術平均、ない場合はゼロ
-
-