码神作业(hashset的应用)

来源:互联网 发布:汇商软件科技有限公司 编辑:程序博客网 时间:2024/04/30 06:06

作业要求:随机产生一个数组,统计每个数字出现的次数,并打印出出现次数最多数字机器次数。使用HashSet实现

package homework5;


import java.util.HashSet;


public class ListForNum {


public static void main(String[] args) {
//实例化这个类
ListForNum test=new ListForNum();
//调用这个类里面的这个统计方法
test.countNum();
}

void countNum(){
//定义一个set集合,用来存储随机数
HashSet<Integer> numSet=new HashSet<>();
//定义一个数组来统计每个随机数出现的次数
int[] time=new int[41];
for (int i = 1,j=0; i <= 50; i++) {
j=(int) (Math.round((Math.random() * 40)) + 10);
System.out.print(j+(i%10==0?"\n":" "));
 
if (numSet.add(j)) {
time[j-10]=1;
}else {
time[j-10]+=1;
}
}
int maxK = 0;
String str = "";

//打印每个随机数出现的次数和最大的次数
for (int i = 0,j=0; i <41; i++) {
if (time[i]!=0) {
j++;
System.out.print("数字"+(i+10)+"出现了"+time[i]+"次");
System.out.print((j%5==0?"\n":" "));
if (time[i] == maxK) {
str = str +i+ ", ";
} else if (time[i] > maxK) {
maxK = time[i];
str = i + ", ";
}
}
}
System.out.println("\n出现最多次数的数字是:" + str + "次数为" + maxK + "次");
}
}


0 0