我需要解析排序数字的列表,然后找出顺序中有多少个数字的计数。
List<Integer> sortedNum = Arrays.asList(1, 2, 3, 8, 10);
因此,在此列表中,我期望结果为.{1;3},{8;1},{10;1}
如果没有流,代码看起来像这样,
Map<Integer, Integer> countMap = new HashMap<>();
int i = 0;
while (true) {
int num = sortedNum.get(i);
int count = 0;
while (i < sortedNum.size()) {
count++;
i++;
if (i == sortedNum.size()) {
break;
}
if ((sortedNum.get(i - 1) + 1) < sortedNum.get(i)) {
break;
}
}
countMap.put(num, count);
if (i == sortedNum.size()) {
countMap.forEach((a, b) -> System.out.println(a + " " + b));
break;
}
}
是否可以通过迭代 IntStream 将其转换为流操作?任何帮助将不胜感激。
HUH函数
呼唤远方
相关分类