gpt4 book ai didi

java - 我想找到java数组中所有元素的频率?

转载 作者:行者123 更新时间:2023-12-02 03:04:41 25 4
gpt4 key购买 nike

我是java新手,我想知道如何找到java数组中每个元素的频率?这是我的代码:

public static void main(String[] args) {
int vl=0;
int a[]={1,2,3,4};

for(int i=0;i<a.length;i++){
for(int j=i+1;j<a.length;j++){
if(a[i]==a[j]){
vl++;
System.out.println(vl);


}else System.out.println(vl);
}
}

}

最佳答案

实现此目的的一种可能方法是使用 HashMap,其中映射键是元素,值是元素频率:

int a[] = {1,2,3,4,2,3};
HashMap<Integer, Integer> frequency = new HashMap<>();
for(int i = 0; i < a.length; i++){
if (frequency.containsKey(a[i])) {
frequency.put(a[i], frequency.get(a[i]) + 1 );
} else {
frequency.put(a[i], 1);
}
}
System.out.println(frequency);

或更多 Java-8 方法:

Map<Integer,Long> f = Arrays.stream(a).boxed().
collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
System.out.println(f);

关于java - 我想找到java数组中所有元素的频率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41895075/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com