【发布时间】:2019-12-11 15:42:01
【问题描述】:
我需要代码方面的帮助,我必须使用随机数字数组将数字“7”放在数组的前面。我使用 Math.random 在每个索引中生成随机数。在这些索引中的任何一个中,都可能生成数字 7。
import java.util.Arrays;
public class NumberShifter {
public static int[] Array(){
int[] array = new int[20];
int max = 10;
int min = 1;
int rand = 0;
int range = max - min +1;
for(int t = 0;t<=array.length-1;t++) {
rand = (int)(Math.random() * range) + min;
array[t] = rand;
}
return array;
}
}
这是我显示的代码的示例输出(所有随机数)
[9, 6, 3, 4, 4, 10, 7, 5, 2, 10, 3, 1, 8, 7, 4, 4, 10, 5, 9, 1]
这个数组中有两个七是随机生成的。
我想要七人组在前面的输出。
[7, 7, 3, 4, 4, 10, 9, 5, 2, 10, 3, 1, 8, 6, 4, 4, 10, 5, 9, 1]
我将如何编写其余代码以实现这一目标?
附:我也是高中生,如果有不对的地方请见谅!
【问题讨论】:
-
如果 math.rand 没有生成 7 会怎样?
-
@C2H50H 最终会的..
-
@NiVeR 这不是重点。该代码可以很好地生成不出现 7 的序列,因此 C2H50H 的问题是合法的
-
您可以遍历阵列并标记所有 7 所在的位置,然后将 7 交换到阵列的前面。查看stackoverflow.com/questions/13766209/…
-
@FedericoklezCulloca 确实,我是在讽刺 :)