public class Product extends AbstractStorelessUnivariateStatistic implements AggregatableStatistic<Product>, WeightedEvaluation, Serializable
 If there are no values in the dataset, then 1 is returned.
 If any of the values are
 NaN, then NaN is returned.
 
 Note that this implementation is not synchronized. If
 multiple threads access an instance of this class concurrently, and at least
 one of the threads invokes the increment() or
 clear() method, it must be synchronized externally.
| Constructor and Description | 
|---|
| Product()Create a Product instance. | 
| Product(Product original)Copy constructor, creates a new  Productidentical
 to theoriginal. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | aggregate(Product other)Aggregates the provided instance into this instance. | 
| void | clear()Clears the internal state of the Statistic | 
| Product | copy()Returns a copy of the statistic with the same internal state. | 
| double | evaluate(double[] values,
        double[] weights,
        int begin,
        int length)Returns the weighted product of the entries in the specified portion of
 the input array, or  Double.NaNif the designated subarray
 is empty. | 
| double | evaluate(double[] values,
        int begin,
        int length)Returns the product of the entries in the specified portion of
 the input array, or  Double.NaNif the designated subarray
 is empty. | 
| long | getN()Returns the number of values that have been added. | 
| double | getResult()Returns the current value of the Statistic. | 
| void | increment(double d)Updates the internal state of the statistic to reflect the addition of the new value. | 
equals, hashCode, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitaggregate, aggregateevaluateaccept, incrementAll, incrementAllevaluateandThenpublic Product()
public Product(Product original) throws NullArgumentException
Product identical
 to the original.original - the Product instance to copyNullArgumentException - if original is nullpublic void increment(double d)
increment in interface StorelessUnivariateStatisticincrement in class AbstractStorelessUnivariateStatisticd - the new value.public double getResult()
getResult in interface StorelessUnivariateStatisticgetResult in class AbstractStorelessUnivariateStatisticDouble.NaN if it
 has been cleared or just instantiated.public long getN()
getN in interface StorelessUnivariateStatisticpublic void clear()
clear in interface StorelessUnivariateStatisticclear in class AbstractStorelessUnivariateStatisticpublic void aggregate(Product other)
This method can be used to combine statistics computed over partitions or subsamples - i.e., the value of this instance after this operation should be the same as if a single statistic would have been applied over the combined dataset.
aggregate in interface AggregatableStatistic<Product>other - the instance to aggregate into this instancepublic double evaluate(double[] values,
                       int begin,
                       int length)
                throws MathIllegalArgumentException
Double.NaN if the designated subarray
 is empty.evaluate in interface StorelessUnivariateStatisticevaluate in interface UnivariateStatisticevaluate in interface MathArrays.Functionvalues - the input arraybegin - index of the first array element to includelength - the number of elements to includeMathIllegalArgumentException - if the array is null or the array index
  parameters are not validUnivariateStatistic.evaluate(double[], int, int)public double evaluate(double[] values,
                       double[] weights,
                       int begin,
                       int length)
                throws MathIllegalArgumentException
Double.NaN if the designated subarray
 is empty.
 
 Throws MathIllegalArgumentException if any of the following are true:
 
Uses the formula,
    weighted product = ∏values[i]weights[i]
 
 that is, the weights are applied as exponents when computing the weighted product.
evaluate in interface WeightedEvaluationvalues - the input arrayweights - the weights arraybegin - index of the first array element to includelength - the number of elements to includeMathIllegalArgumentException - if the parameters are not validpublic Product copy()
copy in interface StorelessUnivariateStatisticcopy in interface UnivariateStatisticcopy in class AbstractStorelessUnivariateStatisticCopyright © 2016–2020 Hipparchus.org. All rights reserved.