#JavaSe# 在只有扑克牌颜色数组和数字数组的情况下,合成扑克牌,并且完成抽牌操作
定义一个扑克牌类
public class Card {
private String[] point={"A","2","3","4","5","6","7","8","9","10","J","Q","K",};
private String[] color={"黑桃","红桃","梅花","方片"};
public String[] getPoint() {
return point;
}
public void setPoint(String[] point) {
this.point = point;
}
public String[] getColor() {
return color;
}
public void setColor(String[] color) {
this.color = color;
}
}
定义测试类
import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;
/**
* 扑克牌 list为牌堆,listCard为抽牌人现有的牌
*/
public class Test {
public static void main(String[] args) {
Random r = new Random();
ArrayList list = new ArrayList();
Card card = new Card();
String point[]=card.getPoint();
String color[]=card.getColor();
for (int i = 0; i <4 ; i++) {
for (int j = 0; j <13 ; j++) {
list.add(color[i]+point[j]); //将扑克牌的花色和数字组合成52张扑克牌
}
}
Scanner scanner = new Scanner(System.in);
int random = scanner.nextInt(); //键盘输入要抽几张牌
ArrayList cardList = new ArrayList();
System.out.println("随机"+random+"张牌:");
if(random<=52 && random>0){//防止抽过多的牌
for (int i = 0; i < random; i++) {
int index = r.nextInt(52-i);
cardList.add(list.remove(index));
}
System.out.println(cardList);
System.out.println("此时牌堆还剩:"+list); //检测牌堆
}
else System.out.println("超过范围,无法获取");
}
}