定义一个扑克牌类java
时间: 2024-08-28 20:00:53 浏览: 50
在Java中,我们可以创建一个名为`Card`的类来表示一副扑克牌中的单张牌。扑克牌通常包括四种花色(黑桃、红心、梅花、方块),每种花色有13张数字牌(A、2、3、4、5、6、7、8、9、10、J、Q、K)。下面是一个基础的`Card`类的简单定义:
```java
import java.util.String;
public class Card {
private static final String[] SUITS = {"♠", "♥", "♦", "♣"};
private static final String[] VALUES = {"A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"};
// 牌型枚举,用于代表数字
public enum Suit {
SPADES, HEARTS, DIAMONDS, CLUBS
}
// 卡片实例变量
private Suit suit;
private int value;
public Card(Suit suit, int value) {
this.suit = suit;
this.value = validateValue(value);
}
// 验证值是否有效
private int validateValue(int value) {
return (value >= 1 && value <= 13) ? value : -1; // 返回-1代表无效值
}
// 获取花色
public String getSuit() {
return SUITS[suit.ordinal()];
}
// 获取数值
public String getValue() {
if (VALUES[value] != null) { // 避免null指针异常
return VALUES[value];
}
return "Invalid Value"; // 如果是无效值,返回错误信息
}
@Override
public String toString() {
return getSuit() + getValue();
}
}
```
阅读全文