中易网

用java怎么创建一副扑克牌

答案:1  悬赏:20  
解决时间 2021-01-15 15:34
  • 提问者网友:斑駁影
  • 2021-01-14 15:41
用java怎么创建一副扑克牌
最佳答案
  • 二级知识专家网友:愁杀梦里人
  • 2021-01-14 16:10
用一个list放这52个元素,每个人随机一个数作为list下标发牌,发掉的牌就从list中remove掉
小写了个来耍:
public static void main(String[] args) {
ArrayListlt;Stringgt; list = new ArrayListlt;Stringgt;();
for (int i = 1; i lt;= 13; i++) {//生成牌堆
list.add(quot;红心quot; + i);
list.add(quot;黑桃quot; + i);
list.add(quot;梅花quot; + i);
list.add(quot;方块quot; + i);
}
ArrayListlt;Stringgt; lista = new ArrayListlt;Stringgt;();//生成牌友
ArrayListlt;Stringgt; listb = new ArrayListlt;Stringgt;();
ArrayListlt;Stringgt; listc = new ArrayListlt;Stringgt;();
ArrayListlt;Stringgt; listd = new ArrayListlt;Stringgt;();
while (list.size() gt; 1) {
lista.add(find(list));
listb.add(find(list));
listc.add(find(list));
listd.add(find(list));
}
System.out.println(quot;甲:quot; + lista.toString());
System.out.println(quot;乙:quot; + listb.toString());
System.out.println(quot;丙:quot; + listc.toString());
System.out.println(quot;丁:quot; + listd.toString());
}

public static String find(ArrayListlt;Stringgt; list) {
Random random = new Random();
int m = list.size() - 1;//随机数范围为0到剩余牌数量-1
if (m == 0)//对最后一张牌处理
return list.get(0);
int index = Math.abs(random.nextInt()) % m;
String str = list.get(index);
list.remove(index);
return str;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息