Java模拟扑克牌洗牌实现生成52张扑克的方法示例
更新时间:2018年01月06日 12:44:53 作者:handsome_ZHANG
这篇文章主要介绍了Java模拟扑克牌洗牌实现生成52张扑克的方法,涉及Java数组遍历、重排及输出等相关操作技巧,需要的朋友可以参考下
本文实例讲述了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程序设计有所帮助。
相关文章
Spring init-method与destroy-method属性的用法解析
这篇文章主要介绍了Spring init-method与destroy-method属性的用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-08-08Springboot安全框架整合SpringSecurity实现方式
这篇文章主要介绍了Spring全家桶中Springboot安全框架整合SpringSecurity的实现方式,有需要的朋友可以借鉴参考下,希望可以有所帮助2021-09-09Java BeanUtils.copyProperties的详解
这篇文章主要介绍了Java BeanUtils.copyProperties的详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下2021-08-08
最新评论