Revision: 382
http://objectlabkit.svn.sourceforge.net/objectlabkit/?rev=382&view=rev
Author: benoitx
Date: 2011-04-14 21:08:02 +0000 (Thu, 14 Apr 2011)
Log Message:
-----------
Adding option to ignore zeros
Modified Paths:
--------------
trunk/utils/src/main/java/net/objectlab/kit/util/WeightedAverage.java
Modified: trunk/utils/src/main/java/net/objectlab/kit/util/WeightedAverage.java
===================================================================
--- trunk/utils/src/main/java/net/objectlab/kit/util/WeightedAverage.java 2010-11-22 22:19:10 UTC (rev 381)
+++ trunk/utils/src/main/java/net/objectlab/kit/util/WeightedAverage.java 2011-04-14 21:08:02 UTC (rev 382)
@@ -44,13 +44,22 @@
private final Total total = new Total();
private final Total totalExpanded = new Total();
private int count = 0;
+ private final boolean includeZeros;
+
+ public WeightedAverage() {
+ this.includeZeros = true;
+ }
+
+ public WeightedAverage(final boolean includeZeros) {
+ this.includeZeros = includeZeros;
+ }
public BigDecimal getTotal() {
return total.getTotal();
}
public void add(final BigDecimal value, final BigDecimal weightAsAValue) {
- if (BigDecimalUtil.isNotZero(value)) {
+ if (includeZeros || BigDecimalUtil.isNotZero(value)) {
count++;
total.add(weightAsAValue);
totalExpanded.add(BigDecimalUtil.multiply(value, weightAsAValue));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|