【问题标题】:Need some help about this java code (Im still new to java and im still exploring)需要一些关于这个java代码的帮助(我还是java新手,我还在探索)
【发布时间】:2022-08-16 23:50:46
【问题描述】:

实现一个名为 RandNum 的类。该类应该有一个由 25 个整数组成的 5x5 二维数组。构造函数应该使用 random() 函数为数组中的每个元素生成一个 1 到 100 范围内的随机数。

实现一种方法来计算 25 个值的最小值、最大值和平均值。 实现一种方法来显示数组的值,即 25 个值的最小值、最大值和平均值。使用 main 方法实现一个名为 MyMain 的类并演示 RandNum 类。

  • 你的问题是什么? ...您需要什么帮助? ...请编辑标题,以便简要描述问题

标签: java oop


【解决方案1】:

尝试这个。

了解到您正在学习 Java,我发布了一个可行的解决方案。 在复制之前确保您理解这一点,如果您不理解,请提出问题。

import java.util.Arrays;
import java.util.concurrent.ThreadLocalRandom;

class RandNum {
    private final int[][] numbers;

    public RandNum() {
        this.numbers = new int[5][5];
        fillRandoms();
    }

    private void fillRandoms() {
        for (int i = 0; i < numbers.length; i++) {
            for (int j = 0; j < numbers[i].length; j++) {
                numbers[i][j] = ThreadLocalRandom.current().nextInt(1, 101);
            }
        }
    }

    public int sum() {
        int sum = 0;
        for (final int[] number : numbers) {
            for (final int i : number) {
                sum += i;
            }
        }
        return sum;
    }

    public double average() {
        final int s = sum();
        return s / 25D;
    }

    public int max() {
        int result = Integer.MIN_VALUE;
        for (final int[] number : numbers) {
            for (final int i : number) {
                result = Math.max(result, i);
            }
        }
        return result;
    }

    public int min() {
        int result = Integer.MAX_VALUE;
        for (final int[] number : numbers) {
            for (final int i : number) {
                result = Math.min(result, i);
            }
        }
        return result;
    }

    public void display() {
        System.out.println(Arrays.deepToString(numbers));
    }
}

class MyMain {

    public static void main(String[] args) {
        final RandNum randNum = new RandNum();
        System.out.println(randNum.max());
        System.out.println(randNum.average());
        System.out.println(randNum.sum());
        System.out.println(randNum.min());
        randNum.display();
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-16
    • 1970-01-01
    • 1970-01-01
    • 2019-05-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多