Java 如何将此程序转换为数组?

Java 如何将此程序转换为数组?,java,Java,我需要使用数组而不是常规数组。 这是我必须做的 生成100个介于0和9之间的随机整数并显示每个数字的计数的程序。 (提示:使用一个包含十个整数的数组,比如计数,来存储0、1、…、9的计数。) 我得到的是单个数字,但不是计数。但同时我必须使用数组 import java.util.Random; public class Hi { public static void main(String[] args) { Random random = new Random();

我需要使用数组而不是常规数组。 这是我必须做的 生成100个介于0和9之间的随机整数并显示每个数字的计数的程序。 (提示:使用一个包含十个整数的数组,比如计数,来存储0、1、…、9的计数。) 我得到的是单个数字,但不是计数。但同时我必须使用数组

import java.util.Random;

public class Hi {

    public static void main(String[] args) {
        Random random = new Random();
        int integer = random.nextInt(100 - 0) + 0;

        System.out.println(sumDigits(integer));
    }
    public static int sumDigits(int n) {

        int sumOfInteger = 0;
        while (n != 0) {
            sumOfInteger += n % 10;
            n /= 10;
        }
        return sumOfInteger;
    }
}
导入java.util.array;
导入java.util.Random;
公共类HW7问题3{
公共静态void main(字符串[]args){
System.out.println(sumdights());
}
公共静态整数[]个数字(整数随机){
int[]位=新的int[10];
对于(int i=0;i<100;i++){
数字[(int)(Math.random()*10)]++;
}
返回数字;
}
}

我希望这能帮助您:

import java.util.Arrays;
import java.util.Random;

public class Hw7Problem3 {

    public static void main(String[] args) {

    System.out.println(sumDigits());

    }
    public static int[] sumDigits(int random) {

        int[] digits = new int[10];
        for (int i = 0; i < 100; i++){
          digits[(int) (Math.random() * 10)]++;
        }
        return digits;
    }
}
int counts[]=新的int[10];
对于(int i=0;i<100;i++){
int rnd=随机的nextInt(10);
计数[rnd]=计数[rnd]+1;
}

因此,在计数[N]中,您可以找到N随机生成的次数。

您的任务是创建100个介于0和10之间的随机整数。因此,我们需要从一个要计数的
数字数组开始。我们可以使用一个
Math.random()
并乘以10(得到一个从0到9的数字,包括0到9的数字),然后在
数字中增加索引。差不多

int counts[] = new int[10];
for(int i = 0; i < 100; i++) {
    int rnd = random.nextInt(10);
    counts[rnd] = counts[rnd] + 1;
}
我跑了两次

System.out.println(Arrays.toString(digits));


这似乎表明它是有效的。

你的问题不清楚。你说显示每个数字的计数,但你正在对它们进行求和。你能显示同样的输入和输出样本吗?哦,是的,我需要每个数字的计数,我被困在这个问题上,我用不同的方法处理它,但我不明白。是的,让我更明白。我无法得到这个程序的定义。@Wilson是的,因为这是我作为一个方法的答案,但您忘记了
Arrays.toString()
,所以您从对象获得了默认的toString
System.out.println(Arrays.toString(sumdights())
System.out.println(Arrays.toString(digits));
[11, 11, 9, 9, 6, 11, 9, 13, 11, 10]
[8, 6, 5, 11, 10, 9, 13, 10, 15, 13]