gpt4 book ai didi

java - 如何使用嵌套的 for/each 循环来创建具有不同特征的对象?

转载 作者:行者123 更新时间:2023-11-30 07:06:00 25 4
gpt4 key购买 nike

我正在尝试创建一副纸牌(基于 SET 游戏),其中包含 81 张独特的纸牌。我试图通过使用三个通用的 for 循环来实现这一点。现在,我有了三个具有特征(形状、颜色、图案)的字符串数组。然而,在将 println 语句添加到循环中后,我发现只有红色卡片是用一种模式创建的。

ArrayList<Card> deck = new ArrayList<Card>();

static public Deck create() {
Deck deck = new Deck();
String[] shapes = new String[] { "diamond", "squiggly", "oval",
"double diamond", "double squiggly", "double oval",
"triple diamond", "triple squiggly", "triple oval" };
String[] colors = new String[] { "red", "green", "purple" };
String[] patterns = new String[] { "stripes", "filled in", "outlined" };
// Shapes
for (String shape : shapes) {
System.out.println(shape);
// Colors
for (String color : colors) {
System.out.println(color);

// Patterns
for (String pattern : patterns) {
System.out.println(pattern + "\n");
Card card = new Card(shape, color, pattern);
deck.deck.add(card);


break;
}
break;
}

}
return null;

}

这是输出:

diamond
red
stripes

squiggly
red
stripes

oval
red
stripes

double diamond
red
stripes

double squiggly
red
stripes

double oval
red
stripes

triple diamond
red
stripes

triple squiggly
red
stripes

triple oval
red
stripes

现在,它应该用每个单独的图案和形状创建所有形状。我完全迷失了这个,我将不胜感激!

最佳答案

删除代码中的 break 语句。 break 语句导致内部循环提前终止。

我测试了您的代码,它生成了 81 张没有 break 语句的卡片。看这个例子:

http://ideone.com/SVsXPi

关于java - 如何使用嵌套的 for/each 循环来创建具有不同特征的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26106783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com