主要方法中必须包含以下内容:
声明一个大小为20的数组,其中将包含20个整数。
生成20个随机整数,范围为1到10,并将它们放入此数组中。
使用FOR循环(从1到20)填充数组。
在FOR循环中,将方法1放置在数组中时,调用方法1一次生成一个随机数。
向方法发送范围的起始值。
向方法发送范围的结束值。
显示数组的内容。
调用方法2以打印出数组。
将方法发送给数组。
发送方法数组的大小。
到目前为止,这是我的代码,出现一些错误:
Kidwell_Lab09.java:29: error: incompatible types: int[] cannot be converted to int randomNumbers = new int[SIZE];
Kidwell_Lab09.java:32: error: array required, but int found System.out.println("Number " + i + " : " + randomNumbers[i]);
Kidwell_Lab09.java:39: error: cannot find symbol x = inputReader.nextInt();
symbol: variable x location: class Kidwell_Lab09
Kidwell_Lab09.java:40: error: cannot find symbol } while (x == 1);
symbol: variable x location: class Kidwell_Lab09 4 errors
在这种品脱的情况下,我有点失落,在此先感谢:
import java.util.Scanner;
import java.util.Random;
public final class {
public static Random generator = new Random();
public int createNum(int[] randomNumbers, int SIZE, int n, int i) {
int x;
SIZE = 20;
randomNumbers = new int[SIZE];
Random generator = new Random();
for (i = 0; i < SIZE; i++) {
n = generator.nextInt(10) + 1;
randomNumbers[i] = n;
}
return n;
}
public void print(int i, int randomNumbers, int SIZE){
SIZE = 20;
randomNumbers = new int[SIZE];
for (i = 0; i < SIZE; i++) {
System.out.println("Number " + i + " : " + randomNumbers[i]);
}
}
public static void main(String[] args){
do{
Scanner inputReader = new Scanner(System.in);
System.out.print("Do you wish to restart the program, Enter 1 for YES, 2 for NO: ");
x = inputReader.nextInt();
} while (x == 1);
}
}
最佳答案
您的说明对我来说似乎很清楚,让我们从method1
开始;您需要传递范围的起点和终点,并在这两个值之间返回一个随机值。您有一个Random
,让我们使用它。就像是,
private static Random generator = new Random();
public static int method1(int start, int end) {
return generator.nextInt(1 + end - start) + start;
}
接下来,您需要传递一个数组,其长度为
method2
(用于显示数组)。这是一种这样做的方式(我希望您的讲师在这里期望使用for
循环,但我将其保留为练习)public static void method2(int[] arr, int len) {
System.out.println(Arrays.toString(arr));
}
最后,您的
main
方法应调用方法method1
和method2
填充数组并显示它。就像是public static void main(String[] args) {
int[] arr = new int[20];
for (int i = 0; i < arr.length; i++) {
arr[i] = method1(1, 10);
}
method2(arr, arr.length);
}