您好我写了一些代码来打印出一副纸牌
这是如何出现的:2C 2D 2H 2S 3C 3D 3H 3S 4C ...
这就是我想要的:2C 3C 4C 5C 6C ......
这是我的代码的一部分:
public DeckOfCards()
{
for (PlayingCard.CardRank rank : PlayingCard.CardRank.values())
for (PlayingCard.CardSuit suit : PlayingCard.CardSuit.values())
{
System.out.printf(" %c%c ", rank.getSymbol(),suit.getSymbol());
}
}
我打算使用for循环,但我不知道从哪里开始任何想法?
答案 0 :(得分:3)
你非常接近:切换两个循环以获得你正在寻找的效果。
for (PlayingCard.CardSuit suit : PlayingCard.CardSuit.values())
for (PlayingCard.CardRank rank : PlayingCard.CardRank.values())
其他一切看起来都不错。
答案 1 :(得分:0)
围绕嵌套for循环的顺序进行切换。也就是说,将其更改为:
for (PlayingCard.CardSuit suit : PlayingCard.CardSuit.values())
for (PlayingCard.CardRank rank : PlayingCard.CardRank.values())
请记住,内部循环每次都通过外部循环运行一次。 :)
答案 2 :(得分:0)
在我看来,它可能很简单:
for (PlayingCard.CardSuit suit : PlayingCard.CardSuit.values())
{
for (PlayingCard.CardRank rank : PlayingCard.CardRank.values())
{
System.out.printf(" %c%c ", rank.getSymbol(),suit.getSymbol());
}
}
..交换掉两个嵌套的for循环。