在这篇文章中,我们将为您详细介绍用Java8计算int出现次数的内容,并且讨论关于javaint计算的相关问题。此外,我们还会涉及一些关于c–计算整数区间(或int数组)中每个数字的出现次数、IntS
在这篇文章中,我们将为您详细介绍用Java8计算int出现次数的内容,并且讨论关于java int计算的相关问题。此外,我们还会涉及一些关于c – 计算整数区间(或int数组)中每个数字的出现次数、IntStream Java的出现次数、java list 统计元素出现次数、java – 在MultiMap中计算出现次数的知识,以帮助您更全面地了解这个主题。
本文目录一览:- 用Java8计算int出现次数(java int计算)
- c – 计算整数区间(或int数组)中每个数字的出现次数
- IntStream Java的出现次数
- java list 统计元素出现次数
- java – 在MultiMap中计算出现次数
用Java8计算int出现次数(java int计算)
是否有更好的方法来计数Java8中的int出现次数
int[] monthCounter = new int[12];persons.stream().forEach(person -> monthCounter[person.getBirthday().getMonthValue() - 1]++);
答案1
小编典典尝试:
Map<Integer, Long> counters = persons.stream() .collect(Collectors.groupingBy(p -> p.getBirthday().getMonthValue(), Collectors.counting()));
c – 计算整数区间(或int数组)中每个数字的出现次数
例如:
> INPUT n,m = [19,23] = 19,20,21,22,23
>输出应该是:
0次出现:1次
1次出现:2次
2次出现:5次
3次出现:1次等
#include <iostream> using namespace std; int main() { int i,j,z,count,n,m; cin >>n >>m; for(int i=0; i<10; i++) // LOOP FOR DIGITS { cout << i <<"occurences: "; count=0; for(int j=n; j<m; j++) // LOOP INTEGER INTERVAL { while (z!=0) { z = j % 10; // LAST DIGIT OF FirsT NUMBER IN INTERVAL if (z == i) count++; z /= 10; } } cout << count <<" times"<< endl; } }
我的代码每个数字返回0次,错误在哪里?
解决方法
int n,m; cin >> n >> m; counts = int[10]; for(int i = 0; i < 10; ++i) { counts[i] = 0; } for(int j = n; j <= m; j++) { int z = j; do { int digit = z % 10; // LAST DIGIT OF FirsT NUMBER IN INTERVAL counts[digit]++; z /= 10; } while (z != 0); } for(int i = 0; i < 10; ++i) { cout << i << " occurrences " << counts[i] << " times"; }
IntStream Java的出现次数
例如,
测试用例1:数组{0,1,2,3,1}有三次重复数字
测试用例2:数组{0,2}有一次出现
以下是我的代码:
List<Integer> intlist = new ArrayList<Integer>(); int [] array = new int[]{}; while(sc.hasNext()){ intlist.add(sc.nextInt()); array = intlist.stream().mapToInt(i->i).toArray(); } System.out.println("Number of occurrences: " + countRepeats(array)); public static long countRepeats(int [] array){ return IntStream.range(0,array.length-1) .filter(n -> array[n] > 0) .filter(i -> (array[i] == array[i+1])) .peek(System.out::println) .count(); }
但是,我的测试用例2没能得到预期的结果.任何人都可以启发我吗?
解决方法
import java.util.*; import java.util.stream.*; interface CountRepeats { static void main(String[] args) { test(0,1); test(0,2); } static void test(int... digits) { System.err.println( countRepeats(digits)+": "+Arrays.toString(digits) ); } static long countRepeats(int[] array) { return IntStream.range(0,array.length-1) .filter(i -> array[i] == array[i+1] && ( i+2 >= array.length || array[i] != array[i+2] ) ) .count(); } }
这不是溪流的强项.
(线
i+2 >= array.length ||
真的应该
i >= array.length-2 ||
避免导致ArrayOutOfBoundsException的整数溢出.旧语言及其破碎的整数…)
java list 统计元素出现次数
List<Object> ids = new ArryList<>();
for(Object id : ids){
Map<String,Object> map = new HashMap<>();
map.put("id", id);
map.put("count", Collections.frequency(ids, id));
list.add(map);
}
java – 在MultiMap中计算出现次数
{Entertainment=[5],Food=[2,2,2],Products=[11],Health & Beauty=[3]}
如何计算这些键的总数,使其计算如下?
Entertainment = 1 Food = 3 Products = 1 Health & Beauty = 1
数组中的数字是类别ID,因此Food有3次出现.
解决方法
Documentation
今天关于用Java8计算int出现次数和java int计算的讲解已经结束,谢谢您的阅读,如果想了解更多关于c – 计算整数区间(或int数组)中每个数字的出现次数、IntStream Java的出现次数、java list 统计元素出现次数、java – 在MultiMap中计算出现次数的相关知识,请在本站搜索。
本文标签: