LinkedList存储一副扑克牌,实现洗牌功能。
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存储一副扑克牌,实现洗牌功能。的更多相关文章
- 需求: 使用LinkedList存储一副扑克牌,然后实现洗牌功能。
import java.util.LinkedList; import java.util.Random; /* 需求: 使用LinkedList存储一副扑克牌,然后实现洗牌功能. */ //扑克类 ...
- C++分享笔记:扑克牌的洗牌发牌游戏设计
笔者在大学二年级期间,做过的一次C++程序设计:扑克牌的洗牌发牌游戏.具体内容是:除去大王和小王,将52张扑克牌洗牌,并发出5张牌.然后判断这5张牌中有几张相同大小的牌,是否是一条链,有几个同花等. ...
- 利用LinkedList生成一副扑克牌
import java.util.LinkedList; import java.util.Random; //自定义一个Poker类,用于存储扑克的信息(花色.数字) class Poker{ St ...
- 利用LinkedList实现洗牌功能
分2步: 1.生成扑克牌. 2.洗牌. package com.dongbin.collection; import java.util.LinkedList; import java.util.Ra ...
- Java模拟斗地主发牌和洗牌
package cn.itcast_04; import java.util.ArrayList; import java.util.Collections; import java.util.Has ...
- C语言:判断t所指字符串中的字母是否由连续递增字母组成。-判断一个输入的任何整数n,是否等于某个连续正整数序列之和。-将一副扑克牌编号为1到54,以某种方式洗牌,这种方式是将这副牌分成两半,然后将他们交叉,并始终保持编号1的牌在最上方。
//判断t所指字符串中的字母是否由连续递增字母组成. #include <stdio.h> #include <string.h> void NONO(); int fun( ...
- 用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,... ...
- 实现斗地主纸牌游戏---洗牌 发牌 看底牌的具体功能------Map集合存储方法 遍历的应用
该Demo只是斗地主的游戏的一部分,实现的斗地主的组合牌 洗牌 发牌 看牌的功能,主要应用Map集合进行练习 package cn.lijun import java.util.ArrayList ...
- java斗地主扑克 扑克牌 洗牌 发牌 Collection 集合练习
package com.swift.poker; import java.util.ArrayList; import java.util.Collections; /*训练考核知识点:Collect ...
随机推荐
- [HDU 3535] AreYouBusy (动态规划 混合背包 值得做很多遍)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3535 题意:有n个任务集合,需要在T个时间单位内完成.每个任务集合有属性,属性为0的代表至少要完成1个 ...
- codeforce--Vasya and Petya's Game
网址:http://codeforces.com/contest/576/problem/A A. Vasya and Petya's Game time limit per test 1 secon ...
- GL_INVALID_VALUE(0X501)
当android应该打开GPU的支持后, 有些手机会出现黑屏.闪屏等现象. 跟踪控制台, 会打印日志GL_INVALID_VALUE(0X501). 参考资料:http://mobile.riaos. ...
- How to Modify Public Network Information including VIP in Oracle Clusterware (文档 ID 276434.1)
APPLIES TO: Oracle Database - Enterprise Edition - Version 11.2.0.3 to 12.1.0.2 [Release 11.2 to 12. ...
- 项目积累——Strus、Hibernate
在Struts-config.xml中对ActionForm Bean的生命周期用scope进行定义,可用的选项有:pageContext(缺省).request(常用).session.applic ...
- Android——ScrollView
1.activity_scrollview.xml <?xml version="1.0" encoding="utf-8"?><Scroll ...
- SVN-服务器搭建、apache2整合、eclipse使用
如题,分成3个部分: 1.SVN服务器搭建.操作系统Ubuntu 14.04.2 LTS.具体方法度娘很多,不再细数. 安装:sudo apt-get install subversion 创建版本库 ...
- 剑指Offer:面试题17——合并两个排序的链表
题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. 思路1: 分别用p1,p2两个指针扫描两个有序链表,p3指针去构建新链表h3. p1.val & ...
- Flask框架学习笔记(API接口管理平台 V2.0)
博主今天把API接口管理平台发布到github了,这次是更新一些功能 如支持本地数据库sqlite3.优化了数据结构 技术方面跟之前V1.0相同,只增加生产本地数据:但是为了支持层级的参数,修改了数据 ...
- Unity3D 新人学习的一点感想
想到那里写到那里吧 1.Unity3D的优点大家都知道:组件化.c#语言.可见即所得. 当初刚开始学习的是cocos2dx,c++的货,觉得还是写的不错的,也是国人开发的,真的代码很容易懂,直接看引擎 ...