package cd.itcast.runble;

import java.util.LinkedList;
import java.util.Random; /**
* LinkedList存储一副扑克牌,实现洗牌功能。
* @author 甘兴瑞
* 2016/11/8
*/
class Poker{
String huase;
String num; public Poker(String huase, String num) {
this.huase = huase;
this.num = num;
} @Override
public String toString() {
return "{"+huase +num+"}";
} } public class Demo2 {
public static void main(String[] args) {
LinkedList list2=createPoker();
xiPoker(list2);//既可以返回linkedList,也可以不反回,使用void,因为共享对象。
showPoker(list2);
}
public static LinkedList createPoker() {
//存扑克的
LinkedList list=new LinkedList();
String[] arr1={"红桃","黑桃","方片","梅花"};
String[] arr2={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
for(int i=0;i<arr1.length;i++){
for(int j=0;j<arr2.length;j++){
Poker poker=new Poker(arr1[i],arr2[j]);
list.add(poker);
}
}
return list;
}
//显示扑克牌
public static void showPoker(LinkedList pokers) {
for(int i=0;i<pokers.size();i++){
System.out.print(pokers.get(i));
if(i%13==12){
System.out.println();
}
}
}
//洗牌的功能
public static void xiPoker(LinkedList Pokers) {
//创建随机数对象
Random ran = new Random();
for(int i=0;i<100;i++){
int index1 = ran.nextInt(Pokers.size());
int index2 = ran.nextInt(Pokers.size());
Poker poker1 = (Poker)Pokers.get(index1);
Poker poker2 = (Poker)Pokers.get(index2);
Pokers.set(index1, poker2);
Pokers.set(index2, poker1);
}
}
}

LinkedList存储一副扑克牌,实现洗牌功能。的更多相关文章

  1. 需求: 使用LinkedList存储一副扑克牌,然后实现洗牌功能。

    import java.util.LinkedList; import java.util.Random; /* 需求: 使用LinkedList存储一副扑克牌,然后实现洗牌功能. */ //扑克类 ...

  2. C++分享笔记:扑克牌的洗牌发牌游戏设计

    笔者在大学二年级期间,做过的一次C++程序设计:扑克牌的洗牌发牌游戏.具体内容是:除去大王和小王,将52张扑克牌洗牌,并发出5张牌.然后判断这5张牌中有几张相同大小的牌,是否是一条链,有几个同花等. ...

  3. 利用LinkedList生成一副扑克牌

    import java.util.LinkedList; import java.util.Random; //自定义一个Poker类,用于存储扑克的信息(花色.数字) class Poker{ St ...

  4. 利用LinkedList实现洗牌功能

    分2步: 1.生成扑克牌. 2.洗牌. package com.dongbin.collection; import java.util.LinkedList; import java.util.Ra ...

  5. Java模拟斗地主发牌和洗牌

    package cn.itcast_04; import java.util.ArrayList; import java.util.Collections; import java.util.Has ...

  6. C语言:判断t所指字符串中的字母是否由连续递增字母组成。-判断一个输入的任何整数n,是否等于某个连续正整数序列之和。-将一副扑克牌编号为1到54,以某种方式洗牌,这种方式是将这副牌分成两半,然后将他们交叉,并始终保持编号1的牌在最上方。

    //判断t所指字符串中的字母是否由连续递增字母组成. #include <stdio.h> #include <string.h> void NONO(); int fun( ...

  7. 用C语言实现的扑克牌洗牌程序

    一副牌:54张 从0开始排序: 0-12表示黑桃   A 1,2,3,... 10,J,Q,K 13-25表示红桃 A 1,2,3,... 10,J,Q,K 26-38表示草花 A 1,2,3,... ...

  8. 实现斗地主纸牌游戏---洗牌 发牌 看底牌的具体功能------Map集合存储方法 遍历的应用

    该Demo只是斗地主的游戏的一部分,实现的斗地主的组合牌  洗牌  发牌 看牌的功能,主要应用Map集合进行练习 package cn.lijun import java.util.ArrayList ...

  9. java斗地主扑克 扑克牌 洗牌 发牌 Collection 集合练习

    package com.swift.poker; import java.util.ArrayList; import java.util.Collections; /*训练考核知识点:Collect ...

随机推荐

  1. nyoj 92 图像有用区域

    点击打开链接 图像有用区域 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述 "ACKing"同学以前做一个图像处理的项目时,遇到了一个问题,他需要摘取 ...

  2. SSH连接问题

    新安装的ubuntu14.04无法使用root用户ssh连接,显示ssh root permission denied 解决方法: /etc/ssh/sshd_confg: PermitRootLog ...

  3. iis实现类似tomcat ip:port直接访问站点

    先配置host: 建站点: iis配置文件地址:C:\Windows\System32\inetsrv\config\applicationHost.config(于tomcat中的web.xml类似 ...

  4. php 深入理解addslashes函数

    php addslashes函数对于很多人来说并不陌生,但很大部分人只是了解皮毛,只知道addslashes函数是在特定字符前面加上反斜杠,本文章将带大家深入理解php addslashes函数的使用 ...

  5. 剑指Offer:面试题4——替换空格(java实现)

    问题描述:请实现一个函数,把字符串中的每个空格替换成"%20". 例如: 输入:"We are happy." 输出:"We%20are%20happ ...

  6. Postman使用小技巧 - 用Postman生成Request代码

    Postman这款工具可以让你很方便的测试你的Web API,那如果你实在是没办法用Postman,必须手写代码,又或者你有别的需求是Postman没法实现的,你必须写一个特殊的script或App来 ...

  7. canvas-7globleCompositeOperation2.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. deep learning新征程

    deep learning新征程(一) zoerywzhou@gmail.com http://www.cnblogs.com/swje/ 作者:Zhouwan  2015-11-26   声明: 1 ...

  9. 8051学习笔记——AD

    AD.C #include<reg52.h> #include <iic.h> #define PCF8591 0x90 //PCF8591 地址 sbit LS138A=P2 ...

  10. Eclipse SVN冲突解决

    基本原则是:每次提交前需要先和线上的对比,先把冲突解决掉,然后把线上的更新到本地,最后把本地的提交上去. 右键项目 -> Team -> 与资源库同步 在同步视图中选择Conflicts ...