|
@@ -2,6 +2,7 @@ package cn.com.qmth.stmms.biz.report.utils.unit;
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
+import java.util.Map.Entry;
|
|
|
|
|
|
public class RangeCounter {
|
|
|
|
|
@@ -31,4 +32,30 @@ public class RangeCounter {
|
|
|
count++;
|
|
|
map.put(min, count);
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取在[s1, s2)分数范围内的数量<br>
|
|
|
+ * s1和s2可以有一个为null,不能全部为null
|
|
|
+ *
|
|
|
+ * @param s1
|
|
|
+ * @param s2
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public int countGeAndLt(Double s1, Double s2) {
|
|
|
+ int count = 0;
|
|
|
+ if (s1 != null || s2 != null) {
|
|
|
+ for (Entry<Double, Integer> entry : map.entrySet()) {
|
|
|
+ Double key = entry.getKey();
|
|
|
+ if (s1 != null && key < s1) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (s2 != null && key >= s2) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ count += entry.getValue();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return count;
|
|
|
+ }
|
|
|
+
|
|
|
}
|