编程模拟斗地主的生成牌、发牌和洗牌的操作
一、使用到的方法:
toString | 将对象返回为字符串的形式 |
---|---|
hashCode | 用来比较两个对象的内容是否相等 |
equals | 用来比较两个对象是否相等 |
常量 | static 和 final 联合使用,用来定义常量(final和static的顺序没有关系) 注意:常量的命名规范,字母都大写,用下划线连接多个单词 |
截取集合中的元素 | subList(fromIndex,toIndex); |
二、题目需求:
/**
- 1.创建Card类,定义花色suit和点数rank的属性
- 2.添加相应的构造方法
- 3.在Card中覆盖toString,hashCode,equals方法 (必须写)
- 4.创建玩家类 Player类 ,定义名字name ,手牌 cards (List)
- 5.添加相应的构造方法
- 6.在Player中覆盖toString,hashCode,equals方法 (必须写)
- 7.创建一副扑克牌,54张(到这)
- 8.实现洗牌(查看API选做)
- 9.实现轮流发牌
- 10.最终结果需要看到XXX手上的牌:[XXX,XXXX,XXXX…]
*/
三、代码实现
1. Card卡牌类
package Poker;
public class Card {
private int suit;//花色
private int rank;//点数
//有参构造
public Card(int suit, int rank) {//形参
super();
this.suit = suit;
this.rank = rank;
}
//无参构造
public Card() {
super();
}
public int getSuit() {
return suit;
}
public void setSuit(int suit) {
this.suit = suit;
}
public int getRank() {
return rank;
}
public void setRank(int rank) {
this.rank = rank;
}
//hashCode覆盖方法
&#