【算法】程序猿不写代码是不对的49

来源:互联网 发布:农村淘宝发展现状分析 编辑:程序博客网 时间:2024/03/29 21:12
package com.kingdz.algorithm.time201705;import java.util.Random;/** * 洗扑克牌 *  * @author kingdz *  */public class Algo05 {public static void main(String[] args) {PorkerCard[] card = genCard();output(card);System.out.println();shuffle(card);output(card);}/** * 洗牌操作 *  * @param card */private static void shuffle(PorkerCard[] card) {Random r = new Random(System.currentTimeMillis());for (int i = 0; i < 1000; i++) {int index = r.nextInt(card.length);PorkerCard tmp = card[0];card[0] = card[index];card[index] = tmp;}}/** * 打印扑克牌 *  * @param card */private static void output(PorkerCard[] card) {for (int i = 0, j = card.length; i < j; i++) {System.out.print(card[i] + " ");if ((i + 1) % 13 == 0) {System.out.println();}}}/** * 生成扑克牌数组 *  * @return */private static PorkerCard[] genCard() {PorkerCard[] ret = new PorkerCard[52];int index = 0;for (int i = 0; i < 4; i++) {String color = "红桃";if (i == 1) {color = "黑桃";} else if (i == 2) {color = "方块";} else if (i == 3) {color = "梅花";}ret[index] = new PorkerCard(color, "A");index++;for (int j = 1; j < 10; j++) {ret[index] = new PorkerCard(color, "" + (j));index++;}ret[index] = new PorkerCard(color, "J");index++;ret[index] = new PorkerCard(color, "Q");index++;ret[index] = new PorkerCard(color, "K");index++;}return ret;}}class PorkerCard {private String color;private String number;public PorkerCard(String color, String number) {super();this.color = color;this.number = number;}public String getColor() {return color;}public void setColor(String color) {this.color = color;}public String getNumber() {return number;}public void setNumber(String number) {this.number = number;}@Overridepublic String toString() {return "[" + color + "," + number + "]";}}

0 0