我有一个最令人沮丧的时刻在我的生活(第二学期编码挑战).我利用两个列表获得三个随机数,然后我希望这三个随机数被分配到他们的适当的标志像一个老虎机.然而,我的for循环并不像我希望他们...它吐出三个结果每个随机数.
`import java.util.Scanner;导入java.util.Random;导入java.util数组;
public class Uncategorized {
public static void main(String[] args){ Scanner scnr = new Scanner(System.in);
final int numReels = 3;
Random random = new Random();
int[ ] symbols = new int[numReels];
String [ ] logo = new String [numReels];
for (int i = 0; i < symbols.length; ++i) {
symbols[ i ] = random.nextInt(5);
//System.out.println(symbols[i]);
}
for (int k = 0; k < symbols.length; ++k)
for (int j = 0; j < 3; ++j) {
if (symbols[k] == 0) {
logo[j] = "Cherry";
}
else if (symbols[k] == 1) {
logo[j] = "7";
}
else if (symbols[k] == 2) {
logo[j] = "Grape";
}
else if (symbols[k] == 3) {
logo[j] = "Orange";
}
else if (symbols[k] == 4) {
logo[j] = "Lemon";
}
System.out.println(logo[j] + " ");
}
System.out.println(“符号#:“+符号[0] +“徽标:“+ logo[0]);System.out.println(“符号#:“+符号[1] +”徽标:“+ logo[1]);System.out.println(“符号#:“+符号[2] +”徽标:“+ logo[2]);”
2条答案
按热度按时间jv4diomz1#
这里不应该有嵌套循环。只使用单个循环,在每次迭代中访问两个数组中相同索引处的元素。
由于所有可能的
symbol
值都形成了一个连续的范围,因此索引到所有符号的数组中会更简单,从而避免了一长串if
语句(如果它们不连续,则可以使用Map
)。j8yoct9x2#
你不需要第二个内部for循环。你也可以使用一个增强的switch: