GVKun编程网logo

用Java8计算int出现次数(java int计算)

25

在这篇文章中,我们将为您详细介绍用Java8计算int出现次数的内容,并且讨论关于javaint计算的相关问题。此外,我们还会涉及一些关于c–计算整数区间(或int数组)中每个数字的出现次数、IntS

在这篇文章中,我们将为您详细介绍用Java8计算int出现次数的内容,并且讨论关于java int计算的相关问题。此外,我们还会涉及一些关于c – 计算整数区间(或int数组)中每个数字的出现次数、IntStream Java的出现次数、java list 统计元素出现次数、java – 在MultiMap中计算出现次数的知识,以帮助您更全面地了解这个主题。

本文目录一览:

用Java8计算int出现次数(java int计算)

用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数组)中每个数字的出现次数

c – 计算整数区间(或int数组)中每个数字的出现次数

使用循环,如何找到整数区间[n,m]中每个数字的出现?

例如:

> 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次,错误在哪里?

解决方法

您不需要在范围内循环10次.

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的出现次数

IntStream Java的出现次数

我想定义一个名为countRepeats的方法,它接受一个数字列表0到9,并返回相邻重复字母的出现次数.

例如,

测试用例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 统计元素出现次数

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中计算出现次数

java – 在MultiMap中计算出现次数

我有一个具有多个相似值的MultiMap:

{Entertainment=[5],Food=[2,2,2],Products=[11],Health & Beauty=[3]}

如何计算这些键的总数,使其计算如下?

Entertainment = 1
Food = 3
Products = 1
Health & Beauty = 1

数组中的数字是类别ID,因此Food有3次出现.

解决方法

multimap.get(key).size()或multimap.keys().count(key)应该可以工作.

Documentation

今天关于用Java8计算int出现次数java int计算的讲解已经结束,谢谢您的阅读,如果想了解更多关于c – 计算整数区间(或int数组)中每个数字的出现次数、IntStream Java的出现次数、java list 统计元素出现次数、java – 在MultiMap中计算出现次数的相关知识,请在本站搜索。

本文标签: