Java模拟扑克牌洗牌实现生成52张扑克的方法示例
本文实例讲述了Java模拟扑克牌洗牌实现生成52张扑克的方法。分享给大家供大家参考,具体如下:
要求:
生成52张扑克,模拟扑克牌洗牌,并输出。
实现代码:
package com.NCU.ZHANGhuirong; import java.util.ArrayList; import java.util.Collections; public class Card { public String poker(int num) { String str = ""; String[] face = { "♥", "♠", "♣", "♦" }; String[] number = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K" }; str += face[num % 4] + number[num % 13]; return str; } public void shuffle(@SuppressWarnings("rawtypes") ArrayList list) { } @SuppressWarnings("unchecked") public static void main(String[] args) { @SuppressWarnings("rawtypes") ArrayList list = new ArrayList(); Card card = new Card(); for (int i = 0; i < 52; i++) { list.add(card.poker(i)); } for (int i = 0; i < list.size(); i++) { System.out.printf("%s\t", list.get(i)); if ((i + 1) % 13 == 0) { System.out.println(" "); } } System.out.println(); Collections.shuffle(list); System.out.println("洗牌后:"); for (int i = 0; i < list.size(); i++) { System.out.printf("%s\t", list.get(i)); if ((i + 1) % 13 == 0) { System.out.println(" "); } } } }
输出:
♥A ♠2 ♣3 ♦4 ♥5 ♠6 ♣7 ♦8 ♥9 ♠10 ♣J ♦Q ♥K ♠A ♣2 ♦3 ♥4 ♠5 ♣6 ♦7 ♥8 ♠9 ♣10 ♦J ♥Q ♠K ♣A ♦2 ♥3 ♠4 ♣5 ♦6 ♥7 ♠8 ♣9 ♦10 ♥J ♠Q ♣K ♦A ♥2 ♠3 ♣4 ♦5 ♥6 ♠7 ♣8 ♦9 ♥10 ♠J ♣Q ♦K 洗牌后: ♥3 ♥9 ♦6 ♥J ♦K ♥4 ♦8 ♥K ♦Q ♦5 ♣7 ♠J ♠A ♦10 ♣A ♥8 ♠9 ♥Q ♦4 ♠6 ♠8 ♥10 ♣2 ♣10 ♦7 ♠10 ♥A ♣J ♠K ♠5 ♥2 ♣8 ♦J ♠Q ♦3 ♦9 ♣Q ♣K ♣3 ♥5 ♣6 ♣5 ♦2 ♦A ♥7 ♠4 ♥6 ♠7 ♣4 ♠3 ♠2 ♣9
更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
您可能感兴趣的文章:
- Java利用数组随机抽取幸运观众如何实现
- JAVA随机打乱数组顺序的方法
- Java中打乱一个数组的2种公平算法分享
- Java实现洗牌发牌的方法
- Java对数组实现选择排序算法的实例详解
- 简单讲解奇偶排序算法及在Java数组中的实现
- java数据结构与算法之双向循环队列的数组实现方法
- JAVA collection集合之扑克牌游戏实例
- 详解Java数据结构和算法(有序数组和二分查找)
- Java数组常用排序算法实例小结
赞 (0)