欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java数组之一维数值数组之随机数统计

程序员文章站 2022-06-28 16:28:22
随机数Java数组之一维数值数组之随机数统计Random 类例题:统计数组中每个随机数出现的次数Java数组之一维数值数组之随机数统计在 Java 中有一个 Random 类,他可以在指定的取值范围内随机产生数字。Random 类要想使用 Random 类,第一步需要导入 java.util.Random 这个包。import java.util.Random;第二步需要创建 Random 对象。Random random = new Random();创建完 Random 对象之后,我们就...

Java数组之一维数值数组之随机数统计

在 Java 中有一个 Random 类,他可以在指定的取值范围内随机产生数字。

Random 类

要想使用 Random 类,第一步需要导入 java.util.Random 这个包。
import java.util.Random;
第二步需要创建 Random 对象。
Random random = new Random();

创建完 Random 对象之后,我们就可以使用它提供的方法来创建随机数了。

方法名 方法说明
nextDouble() 方法 返回 0.0 至 1.0 之间的 double 类型值
nextFloat() 方法 返回的是 0.0 至 1.0 之间的 float 类型值
nextInt(int n)方法 返回的是 0(包括)至 n(不包括)之间的 int 值

代码示例:

public class RandomTest {
    public static void main(String[] args) {
        Random random = new Random();
            System.out.println(random.nextInt(10));
            System.out.println(random.nextFloat());
            System.out.println(random.nextDouble());
        }
}

第一次运行结果:

4
0.60541
0.7046691676099207

第二次运行结果:

3
0.055246472
0.47445795351116005

我们可以看到第一次运行结果和第二次运行的结果是不一样的。当我们想要第一次和第二次运行结果一致的话,可以在创建 Random 对象的时候传入一个 Long 类型的数字,这个数字叫随机种子。具有相同随机种子的 Random 对象生成的随机数是一样的。

示例:

public static void main(String[] args) {
        // 创建一个Random对象并传入随机种子
        Random random = new Random(10);
        System.out.println(random.nextInt(10));
        System.out.println(random.nextFloat());
        System.out.println(random.nextDouble());
}

第一次运行结果:

3
0.44563425
0.2578027905957804

第二次运行结果:

3
0.44563425
0.2578027905957804

例题:统计数组中每个随机数出现的次数

具体要求如下:

1.接收给定的数据(如:4 88,其中第一个数代表数组长度,第二个数代表随机数种子);
2.创建数组并添加随机数(随机数介于 0-19 之间);
3.输出随机数出现的次数(出现次数大于 0 才输出);
4. 按随机数大小排序输出。

注意:数字分隔符为空格。

例:
测试输入:

20 9

预期输出:

4出现了:1 次
6出现了:3 次
8出现了:2 次
9出现了:1 次
11出现了:1 次
13出现了:3 次
15出现了:2 次
16出现了:2 次
17出现了:1 次
18出现了:2 次
19出现了:2 次
import java.util.Random;
import java.util.Scanner;


public class RandomTest {
    public static void main(String[] args) {
        // 请在Begin-End间编写代码
        /********** Begin **********/
        // 接收给定数据
        Scanner input = new Scanner(System.in);
        int n = input.nextInt();
        int l = input.nextInt();
        // 创建Random对象,并设置随机种子
        Random random = new Random(l);
        // 定义数组添加数据
       int a[] = new int [n];
       for(int i=0;i<n;i++){
           a[i]=random.nextInt(20);
       }
        // 统计每个数出现的次数
        int b[]= new int [n];
        for(int i=0;i<n;i++){
            b[a[i]]++;
        }
        // 输出结果
        for(int i=0;i<20;i++){
            if(b[i]>0)
                System.out.printf("%d出现了:%d 次\n",i,b[i]);
        }
        /********** End **********/

    }
}

本文地址:https://blog.csdn.net/qq_45896330/article/details/110220262

相关标签: java基础 java