第一种方法:
int[] nums=new int[20];
for(int i=0;i<nums.length;i++){
nums[i]=(int) (Math.random()*100);
System.out.print(nums[i]+" ");
}
int count=0;
int []counts=new int[nums.length];
for(int i=0;i<nums.length;i++){
for(int j=0;j<nums.length;j++){
if(nums[i]==nums[j]){
count++;
}
}
counts[i]=count;
count=0;
}
int index=0;
int maxs=counts[0];
for(int i=0;i<counts.length;i++){
if(counts[i]>maxs){
maxs=counts[i];
index=i;
}
}
System.out.println("出现次数最多的随机数是:"+nums[index]+"\t出现了"+maxs+"次");
第二种方法:
System.out.println("请输入随机数的范围:");
Scanner input = new Scanner(System.in);
int a = input.nextInt();
System.out.println("请输入数组长度:");
int b = input.nextInt();
int[] random;
random = new int[b];
int[] num = new int[a];
for(int i = 0; i < num.length; i++){
num[i] = 0;
}
for (int i = 0; i < random.length; i++) {
random[i] = new Random().nextInt(a);
num[random[i]]++; //下标记录随机数,值记录随机数的数量。
}
int max1 = 0;
int max2 = 0;//出现最多的数
for(int i = 0; i < num.length; i++) {
if(num[i] > max1) {
max1 = num[i];
max2 = i;
}
}
Arrays.sort(num);
System.out.println("最大的数是:" + max2 + " 出现的次数是:" + num[a-1]);