enum Rank {
DEUCE, THREE, FOUR, FIVE, SIX, SEVEN,
EIGHT, NINE, TEN, JACK, QUEEN, KING, ACE
}enum Suit {
DIAMONDS,
CLUBS,
HEARTS,
SPADES
}一副扑克牌,现在如何用2重for来生成各不相同的4*12=48张牌呢? 个人感觉枚举的不是数 所以不能for(i=1;1++)
也不属于什么for( String a:string1) for-each表示。
DEUCE, THREE, FOUR, FIVE, SIX, SEVEN,
EIGHT, NINE, TEN, JACK, QUEEN, KING, ACE
}enum Suit {
DIAMONDS,
CLUBS,
HEARTS,
SPADES
}一副扑克牌,现在如何用2重for来生成各不相同的4*12=48张牌呢? 个人感觉枚举的不是数 所以不能for(i=1;1++)
也不属于什么for( String a:string1) for-each表示。
解决方案 »
- 好奇怪,jpanel没办法响应鍵盘事件!!!!!!大家请进
- 急急 数据库连接时的问题!!!谢谢谢谢
- 关于java.sql.Timestamp问题?
- 求j2sdk1.4.2_06的chm帮助文档!
- 一个文件被转换成base64编码的字符串后,又用utf-8的编码形式写入到一个xml文件里,如果由xml文件里面的字符串还原为原来的文件?
- 写Properties文件时的奇怪问题,高手请进~!
- 哪位高手知道哪里有应用在网络传输中的加密IO流,谢谢!(在线等待)
- 如何让ie支持swing
- 关于JDBC简单的问题...
- 请问谁知道Jbuilder的serial number 和key是什么?
- java.util.list remove()方法疑问
- 如何用程序创建一个utf-8格式的文本文件
for(Suit suit: Suit.values());
可以转换为一个数组。这样大概可以解决问题了。
小声说一句
应该是13×4=52张牌吧。
----------------------------------------------
同感
rank.ordinal()来返回
但是我下面这个程序在eclipse环境下运行提示
Exception in thread "main" java.lang.NullPointerException
at classes_object.card.Cards.main(Cards.java:45)
==========================================================================
enum Rank {
DEUCE, THREE, FOUR, FIVE, SIX, SEVEN,
EIGHT, NINE, TEN, JACK, QUEEN, KING, ACE
}enum Suit {
DIAMONDS,
CLUBS,
HEARTS,
SPADES
}
class card {
private final Rank rank;
private final Suit suit; //constructor
public card(Rank rank, Suit suit) {
this.rank = rank;
this.suit = suit;
} public Suit getSuit() {
return suit;
} public Rank getRank() {
return rank;
} public String toString() {
return rank + " of " + suit;
}
} public class Cards {
public static void main(String[] args) {
final card[] cards = null;
int i=0;
for(Rank rg:Rank.values())
for(Suit st:Suit.values())
cards[i++]= new card(rg,st);
for(i=0;i<48;i++) {
System.out.println(cards[i]);
}
}
}
d8111的程序我有一点不太明白
前面你已经初始化了数组
final card[] cards = null;
后面
cards[i++]= new card(rg,st);
这样附值是不行的
它是空指针
final card[] cards = null;
修改为
final card[] cards = new card[52];