Java生成随机数组,并求出它的元素最大值

我想让一个数组里面填满我生成的随机数,该怎么办呢

第一,要用规定一个数组

int [] arr = new int[];

第二,要将随机数填进来

        所以要用到Random

import  java.util.Random;        //导包
    
    Random random = new Random();

        用for循环操作

for(int i = 1; i < 5 ; i++)     //我这里只放四个于数组中    {

       arr[i] = new random.nextInt()
}

Topper:

我还想让它实现生成几位的数组,并让随机数填满它

import java.util.Scanner;
import  java.util.Random;
public class arrMax {
    public static void main(String[] args) {
        Random random = new Random();
        Scanner scanner = new Scanner(System.in);
        int num = random.nextInt(100);
        System.out.println("请输入数组中的个数:");

        int num1 = scanner.nextInt();
        int[] arr = new int[num1];
        int max = arr[0];    //在此存入随机数字,for循环
        for (int i = 0;i < num1 ; i++){
            arr [i] = num;      //bug :num 一直没更新,导致后续出错
        }
        System.out.println("随机数生成中。。。");
        System.out.println("------------");
        System.out.println("正在遍历求最值");
        for (int t = 0; t< arr.length;t++){
            if (max < arr[t]){
                max = arr[t];
            }
            System.out.println("max:" + max);
        }

    }
}

但是这段代码有个bug ,大家不要像我一样犯这样的错误

在这里我放出我之前做的错误示范(从上面摘过来的):

    //在此存入随机数字,for循环
        for (int i = 0;i < num1 ; i++){
            arr [i] = num;      //bug :num 一直没更新,导致后续出错
        }

知道bug后,应该这样写:

for (int i = 0;i < num1 ; i++){
            arr [i] = new Random().nextInt(100);     

这时,就没有一个变量num(不是num1,

num1时规定数组的长度的)来固定存储一个Randow值了

故接下来,随机数组的生成在加上对其求最大值的问题就解决了

放出代码:

package arrMax;

import java.sql.SQLOutput;
import java.util.Scanner;
import  java.util.Random;
public class arrMax {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入数组中的个数:");

        int num1 = scanner.nextInt();
        int[] arr = new int[num1];
        int max = arr[0];    //在此存入随机数字,for循环
        for (int i = 0;i < num1 ; i++){
            arr [i] = new Random().nextInt(100);      //bug :num 一直没更新,导致后续出错
        }
        System.out.println("随机数生成中。。。");
        System.out.println("------------");
        System.out.println("正在遍历求最值");
        for (int t = 0; t< arr.length;t++){
            if (max < arr[t]){
                max = arr[t];
            }
            System.out.println("max:" + max);
        }

    }
}


版权声明:本文为qq_54283044原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。