我正在为课堂做一些事情,但卡住了。我相信我已经很接近了,但不知道该怎么办。当我运行我的代码时,我的数组会被输出十次,这一定与我的循环有关。另外,在我的数组中,我不确定如何从20-50创建范围。目前我的范围是1-50。最后,我的输出结果并不完全符合要求。如果能得到任何帮助,将不胜感激。以下是问题和我的代码。
创建一个名为array1的数组,其中包含10个在[20 50]范围内的随机整数。然后创建一个名为array2的数组,其大小与array1相同。然后将array1中大于35的数字复制到array2中。如果复制到array2的数字不够,就在array2中填充0。例如,如果array1是{34, 23, 45, 39, 28, 41, 33, 23, 42, 48},则array2将是{45, 39, 41, 42, 48, 0, 0, 0, 0, 0}。
创建一个名为array1的数组,其中包含10个在[20 50]范围内的随机整数。然后创建一个名为array2的数组,其大小与array1相同。然后将array1中大于35的数字复制到array2中。如果复制到array2的数字不够,就在array2中填充0。例如,如果array1是{34, 23, 45, 39, 28, 41, 33, 23, 42, 48},则array2将是{45, 39, 41, 42, 48, 0, 0, 0, 0, 0}。
import java.util.Random;
import java.util.Scanner;
import java.util.Arrays;
public class Arraylab6 {
public static void main(String[] args) {
int x;
int[] array1 = new int[10];
int[] array2 = new int[10];
Random rand = new Random();
for (int i = 0; i < array1.length; i++) {
int h = rand.nextInt(50);
array1[i] = h;
}
System.out.println(Arrays.toString(array1));
for (int i = 0; i < array1.length; i++) {
if (array1[i] > 35) {
array2[i] = array1[i];
} else {
array2[i] = 0;
}
System.out.println(Arrays.toString(array1));
System.out.println(Arrays.toString(array2));
}
}
}
for-loop
之后打印,而不是在其中。 - bradimus