在循环中生成随机数

时间:2017-02-25 10:28:46

标签: java loops random

我想知道如何在循环中生成随机数。我知道我应该使用java.util.random,但我想知道我该怎么做,因为事实是,我需要生成程序需要的项目随机数,因为它的排序算法。

例如,首先,您需要选择使用哪种方法(例如1),之后输入数字时,下一步需要输入计数项目(例如5),之后,你需要输入物品(所以如果你有5件物品,你需要输入5个不同的物品,然后进行分类。

我需要生成这些数字,因为如果我需要拥有10000个计数,我不想手动输入10k数字,所以最好自动生成它。

希望你能帮助我!对不起,如果我错了什么,这是我的第一篇帖子。 :)

P.S。我在这里添加了部分代码,以便您可以看到我的循环。

public static void main(String[] args) { //3.part - array output

    int numurs;

        int metode;
        System.out.println("Name Surname RDBF0 student no");
        System.out.print("method: ");

        Scanner sc = new Scanner(System.in);
        if (sc.hasNextInt()){
            numurs = sc.nextInt();
        } 
        else
        {
            System.out.println("input-output error");
            sc.close();
            return;
        }

        if (numurs != 1 && numurs != 2) {
            System.out.println("input-output error");
                sc.close();
                return;
        }



        System.out.print("count: ");
            if (sc.hasNextInt())
                metode = sc.nextInt();

            else {
                System.out.println("input-output error");
                sc.close();
                return;
            }


        int a[] = new int[metode];

        System.out.println("items: ");

        for (int i = 0; i < a.length; i++) {

            if (sc.hasNextInt())
            a[i] = sc.nextInt();

        else {
            System.out.println("input-output error");
            sc.close();
            return;
            }
        }
        sc.close();      

        switch (numurs) {

        case 1: firstMethod(a);
        break;
        case 2: secondMethod(a);
        break;

        default:
            System.out.println("input-output error");
        return;
        }
        System.out.println("sorted: ");

            for (int i = 0; i < a.length; i++)
                System.out.print(a[i] + " ");
        } 
    }

1 个答案:

答案 0 :(得分:1)

您可以使用Random类生成随机数,如您所说:

Random rand = new Random();
//if you want the random number to be between 0 and maxValue
int randomNumber = rand.nextInt(maxValue);

//if you want it to be between minValue and maxValue, it should look like this
int randomNumber = rand.nextInt(maxValue) + minValue;