我正在制作游戏,并希望在生成过程中增加一些随机性,因此我需要在创建数组后设置数组中所有元素的值。
到目前为止,我能想到的最好的办法是对每个元素进行1乘1的处理,但我想尽可能地一次完成所有操作。
我要寻找的示例:
ngUpgrade
因此,我不能只在开始时设置值,但不想像这样一一一遍地
int[] array = new int[5];
//"randomNo is set as a random number between 1 and 5 inclusive."
switch(randomNo){
case 1: array = {0, 1, 2, 3, 4}; break;
case 2: array = {8, 9, 10, 11, 12}; break;
case 3: array = {3, 4, 5, 6, 7}; break;
case 4: array = {18, 19, 20, 21, 22}; break;
case 5: array = {14, 15, 16, 17, 18}; break;
}
答案 0 :(得分:3)
在开关内同时进行创建和初始化,如下所示:
int[] array;
//"randomNo is set as a random number between 1 and 5 inclusive."
switch(randomNo){
case 1: array = new int[]{0, 1, 2, 3, 4}; break;
case 2: array = new int[]{8, 9, 10, 11, 12}; break;
case 3: array = new int[]{3, 4, 5, 6, 7}; break;
case 4: array = new int[]{18, 19, 20, 21, 22}; break;
case 5: array = new int[]{14, 15, 16, 17, 18}; break;
default: array = new int[5]; break;
}
答案 1 :(得分:1)
让我们手动选择随机数(不是很随机),让Random库为您完成工作:
import java.util.Random;
Random rand = new Random();
for (int i = 0; i < array.length; i++) {
array[i] = rand.nextInt();`
}
答案 2 :(得分:1)
您可以遍历数组并将每个值设置为随机数。此示例将对数组中的每个值执行此操作,并分配一个1到50之间的数字。
for(int i = 0; i< array.length; i++){
Random rand = new Random();
array[i] = rand.nextInt(50) + 1;
}