本文整理汇总了Java中de.fraunhofer.iosb.ilt.sta.model.Observation.getResult方法的典型用法代码示例。如果您正苦于以下问题:Java Observation.getResult方法的具体用法?Java Observation.getResult怎么用?Java Observation.getResult使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类de.fraunhofer.iosb.ilt.sta.model.Observation
的用法示例。
在下文中一共展示了Observation.getResult方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: calculateAggregateResultFromAggregates
import de.fraunhofer.iosb.ilt.sta.model.Observation; //导入方法依赖的package包/类
public BigDecimal[] calculateAggregateResultFromAggregates(List<Observation> sourceObs) {
BigDecimal[] result;
DescriptiveStatistics stats = new DescriptiveStatistics();
double min = Double.POSITIVE_INFINITY;
double max = Double.NEGATIVE_INFINITY;
int scale = 0;
for (Observation obs : sourceObs) {
Object input = obs.getResult();
if (input instanceof List) {
List list = (List) input;
Number number = handleResult(list.get(0));
scale = Math.max(getScale(number), scale);
stats.addValue(number.doubleValue());
min = Math.min(min, handleResult(list.get(1)).doubleValue());
max = Math.max(max, handleResult(list.get(2)).doubleValue());
} else {
String type = input == null ? "null" : input.getClass().getName();
LOGGER.error("Aggregate input of obs {} should be a List, not a {}", obs.getId(), type);
throw new IllegalArgumentException("Expected List, got " + type);
}
}
result = new BigDecimal[]{
new BigDecimal(stats.getMean()).setScale(scale, RoundingMode.HALF_UP),
new BigDecimal(min).setScale(scale, RoundingMode.HALF_UP),
new BigDecimal(max).setScale(scale, RoundingMode.HALF_UP),
new BigDecimal(stats.getStandardDeviation()).setScale(scale, RoundingMode.HALF_UP)
};
return result;
}