📄 新建 文本文档 (2).txt
字号:
一:
1 一副扑克按顺序打出
红桃A-红桃K,黑桃A-黑桃K,方片A-方片K,草花A-草花K
2 模拟人工洗牌把顺序的牌打乱输入.
import java.util.ArrayList;
import java.util.List;
public class P0308
{
public List cards;
public boolean leftOk = false;
public boolean rightOk = false;
public P0308()
{
cards = new ArrayList();
String[] t=new String[]{"黑桃","红心","草花","方片"};
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 13; j++)
{
cards.add(t[i]+(j + 1));
}
}
}
public List[] divideCards()
{
int index = (int) Math.floor(Math.random() * 51) + 1;
List t1 = new ArrayList();
List t2;
for (int i = 0; i < index; i++)
{
Object t = this.cards.get(0);
this.cards.remove(0);
t1.add(t);
}
t2 = this.cards;
this.cards = new ArrayList();
this.leftOk=false;
this.rightOk=false;
System.out.println("切牌:");
System.out.println(t1);
System.out.println(t2);
return new List[] { t1, t2 };
}
public static void main(String[] args)
{
P0308 p = new P0308();
int n=1;
while (n<11)
{
System.out.println("第"+n+"次洗牌:");
List[] t=p.divideCards();
Thread t1=new workThread(t[0],p,true);
Thread t2=new workThread(t[1],p,false);
t1.start();
t2.start();
while (!p.leftOk || !p.rightOk)
{
try
{
Thread.currentThread().sleep(500);
}
catch (InterruptedException e)
{
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
System.out.println("结果:"+p.cards);
System.out.println("-------------------------------");
n+=1;
}
}
}
class workThread extends Thread
{
private List temp;
private P0308 p;
private boolean isLeftHand;
public workThread(List temp, P0308 p, boolean isLeftHand)
{
this.temp = temp;
this.p = p;
this.isLeftHand = isLeftHand;
}
public void run()
{
while (this.temp.size()!=0)
{
doWork();
}
if (this.isLeftHand)
{
this.p.leftOk=true;
}
else
{
this.p.rightOk=true;
}
}
private void doWork()
{
int count = getCount();
//System.out.println(Thread.currentThread().getName()+":"+count);
for (int i = 0; i < count; i++)
{
Object t = this.temp.get(0);
this.temp.remove(0);
synchronized (this.p)
{
this.p.cards.add(t);
}
}
try
{
Thread.currentThread().sleep(100);
}
catch (InterruptedException e)
{
// TODO 自动生成 catch 块
e.printStackTrace();
}
//System.out.println(this.p.cards);
}
private int getCount()
{
int size=this.temp.size();
return (int) Math.floor(Math.random() * ((size>5)?5:size)) + 1;
}
}
结果
Copy code
第1次洗牌:
切牌:
[黑桃1]
[黑桃2, 黑桃3, 黑桃4, 黑桃5, 黑桃6, 黑桃7, 黑桃8, 黑桃9, 黑桃10, 黑桃11, 黑桃12, 黑桃13, 红心1, 红心2, 红心3, 红心4, 红心5, 红心6, 红心7, 红心8, 红心9, 红心10, 红心11, 红心12, 红心13, 草花1, 草花2, 草花3, 草花4, 草花5, 草花6, 草花7, 草花8, 草花9, 草花10, 草花11, 草花12, 草花13, 方片1, 方片2, 方片3, 方片4, 方片5, 方片6, 方片7, 方片8, 方片9, 方片10, 方片11, 方片12, 方片13]
结果:[黑桃1, 黑桃2, 黑桃3, 黑桃4, 黑桃5, 黑桃6, 黑桃7, 黑桃8, 黑桃9, 黑桃10, 黑桃11, 黑桃12, 黑桃13, 红心1, 红心2, 红心3, 红心4, 红心5, 红心6, 红心7, 红心8, 红心9, 红心10, 红心11, 红心12, 红心13, 草花1, 草花2, 草花3, 草花4, 草花5, 草花6, 草花7, 草花8, 草花9, 草花10, 草花11, 草花12, 草花13, 方片1, 方片2, 方片3, 方片4, 方片5, 方片6, 方片7, 方片8, 方片9, 方片10, 方片11, 方片12, 方片13]
-------------------------------
第2次洗牌:
切牌:
[黑桃1, 黑桃2, 黑桃3, 黑桃4, 黑桃5, 黑桃6, 黑桃7, 黑桃8, 黑桃9, 黑桃10, 黑桃11, 黑桃12, 黑桃13, 红心1, 红心2]
[红心3, 红心4, 红心5, 红心6, 红心7, 红心8, 红心9, 红心10, 红心11, 红心12, 红心13, 草花1, 草花2, 草花3, 草花4, 草花5, 草花6, 草花7, 草花8, 草花9, 草花10, 草花11, 草花12, 草花13, 方片1, 方片2, 方片3, 方片4, 方片5, 方片6, 方片7, 方片8, 方片9, 方片10, 方片11, 方片12, 方片13]
结果:[黑桃1, 黑桃2, 红心3, 黑桃3, 黑桃4, 黑桃5, 红心4, 黑桃6, 黑桃7, 黑桃8, 黑桃9, 红心5, 红心6, 黑桃10, 黑桃11, 黑桃12, 红心7, 黑桃13, 红心1, 红心8, 红心2, 红心9, 红心10, 红心11, 红心12, 红心13, 草花1, 草花2, 草花3, 草花4, 草花5, 草花6, 草花7, 草花8, 草花9, 草花10, 草花11, 草花12, 草花13, 方片1, 方片2, 方片3, 方片4, 方片5, 方片6, 方片7, 方片8, 方片9, 方片10, 方片11, 方片12, 方片13]
-------------------------------
第3次洗牌:
切牌:
[黑桃1, 黑桃2, 红心3, 黑桃3, 黑桃4, 黑桃5, 红心4, 黑桃6, 黑桃7, 黑桃8, 黑桃9, 红心5, 红心6, 黑桃10, 黑桃11, 黑桃12, 红心7, 黑桃13, 红心1, 红心8, 红心2, 红心9, 红心10, 红心11, 红心12, 红心13, 草花1, 草花2, 草花3, 草花4, 草花5, 草花6, 草花7, 草花8, 草花9, 草花10, 草花11, 草花12, 草花13, 方片1, 方片2, 方片3, 方片4, 方片5]
[方片6, 方片7, 方片8, 方片9, 方片10, 方片11, 方片12, 方片13]
结果:[黑桃1, 黑桃2, 红心3, 黑桃3, 黑桃4, 方片6, 方片7, 方片8, 方片9, 黑桃5, 红心4, 黑桃6, 黑桃7, 黑桃8, 方片10, 方片11, 方片12, 黑桃9, 红心5, 红心6, 黑桃10, 黑桃11, 方片13, 黑桃12, 红心7, 黑桃13, 红心1, 红心8, 红心2, 红心9, 红心10, 红心11, 红心12, 红心13, 草花1, 草花2, 草花3, 草花4, 草花5, 草花6, 草花7, 草花8, 草花9, 草花10, 草花11, 草花12, 草花13, 方片1, 方片2, 方片3, 方片4, 方片5]
-------------------------------
第4次洗牌:
切牌:
[黑桃1, 黑桃2, 红心3, 黑桃3, 黑桃4, 方片6, 方片7, 方片8, 方片9, 黑桃5, 红心4, 黑桃6, 黑桃7, 黑桃8, 方片10, 方片11, 方片12, 黑桃9, 红心5, 红心6, 黑桃10, 黑桃11, 方片13, 黑桃12, 红心7, 黑桃13, 红心1, 红心8, 红心2, 红心9, 红心10, 红心11, 红心12, 红心13, 草花1, 草花2, 草花3, 草花4, 草花5, 草花6, 草花7, 草花8, 草花9, 草花10, 草花11, 草花12, 草花13, 方片1]
[方片2, 方片3, 方片4, 方片5]
结果:[黑桃1, 黑桃2, 红心3, 黑桃3, 方片2, 方片3, 方片4, 黑桃4, 方片6, 方片5, 方片7, 方片8, 方片9, 黑桃5, 红心4, 黑桃6, 黑桃7, 黑桃8, 方片10, 方片11, 方片12, 黑桃9, 红心5, 红心6, 黑桃10, 黑桃11, 方片13, 黑桃12, 红心7, 黑桃13, 红心1, 红心8, 红心2, 红心9, 红心10, 红心11, 红心12, 红心13, 草花1, 草花2, 草花3, 草花4, 草花5, 草花6, 草花7, 草花8, 草花9, 草花10, 草花11, 草花12, 草花13, 方片1]
-------------------------------
第5次洗牌:
切牌:
[黑桃1, 黑桃2, 红心3, 黑桃3, 方片2, 方片3, 方片4, 黑桃4, 方片6, 方片5, 方片7, 方片8, 方片9, 黑桃5, 红心4, 黑桃6, 黑桃7, 黑桃8, 方片10, 方片11, 方片12, 黑桃9, 红心5, 红心6]
[黑桃10, 黑桃11, 方片13, 黑桃12, 红心7, 黑桃13, 红心1, 红心8, 红心2, 红心9, 红心10, 红心11, 红心12, 红心13, 草花1, 草花2, 草花3, 草花4, 草花5, 草花6, 草花7, 草花8, 草花9, 草花10, 草花11, 草花12, 草花13, 方片1]
结果:[黑桃1, 黑桃10, 黑桃2, 红心3, 黑桃3, 黑桃11, 方片13, 黑桃12, 红心7, 方片2, 黑桃13, 红心1, 红心8, 红心2, 红心9, 方片3, 方片4, 黑桃4, 方片6, 方片5, 红心10, 方片7, 方片8, 方片9, 黑桃5, 红心4, 红心11, 红心12, 红心13, 草花1, 黑桃6, 草花2, 草花3, 草花4, 草花5, 草花6, 黑桃7, 草花7, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片10, 草花12, 草花13, 方片1, 方片11, 方片12, 黑桃9, 红心5, 红心6]
-------------------------------
第6次洗牌:
切牌:
[黑桃1, 黑桃10, 黑桃2, 红心3]
[黑桃3, 黑桃11, 方片13, 黑桃12, 红心7, 方片2, 黑桃13, 红心1, 红心8, 红心2, 红心9, 方片3, 方片4, 黑桃4, 方片6, 方片5, 红心10, 方片7, 方片8, 方片9, 黑桃5, 红心4, 红心11, 红心12, 红心13, 草花1, 黑桃6, 草花2, 草花3, 草花4, 草花5, 草花6, 黑桃7, 草花7, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片10, 草花12, 草花13, 方片1, 方片11, 方片12, 黑桃9, 红心5, 红心6]
结果:[黑桃1, 黑桃3, 黑桃11, 黑桃10, 黑桃2, 红心3, 方片13, 黑桃12, 红心7, 方片2, 黑桃13, 红心1, 红心8, 红心2, 红心9, 方片3, 方片4, 黑桃4, 方片6, 方片5, 红心10, 方片7, 方片8, 方片9, 黑桃5, 红心4, 红心11, 红心12, 红心13, 草花1, 黑桃6, 草花2, 草花3, 草花4, 草花5, 草花6, 黑桃7, 草花7, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片10, 草花12, 草花13, 方片1, 方片11, 方片12, 黑桃9, 红心5, 红心6]
-------------------------------
第7次洗牌:
切牌:
[黑桃1, 黑桃3, 黑桃11, 黑桃10, 黑桃2, 红心3, 方片13, 黑桃12, 红心7, 方片2, 黑桃13, 红心1, 红心8, 红心2, 红心9, 方片3, 方片4, 黑桃4, 方片6, 方片5, 红心10, 方片7, 方片8, 方片9, 黑桃5, 红心4]
[红心11, 红心12, 红心13, 草花1, 黑桃6, 草花2, 草花3, 草花4, 草花5, 草花6, 黑桃7, 草花7, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片10, 草花12, 草花13, 方片1, 方片11, 方片12, 黑桃9, 红心5, 红心6]
结果:[黑桃1, 红心11, 黑桃3, 红心12, 红心13, 草花1, 黑桃6, 黑桃11, 黑桃10, 黑桃2, 红心3, 方片13, 草花2, 草花3, 草花4, 草花5, 草花6, 黑桃12, 红心7, 方片2, 黑桃13, 黑桃7, 草花7, 红心1, 红心8, 红心2, 红心9, 方片3, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片4, 黑桃4, 方片6, 方片5, 方片10, 红心10, 方片7, 方片8, 方片9, 黑桃5, 草花12, 草花13, 红心4, 方片1, 方片11, 方片12, 黑桃9, 红心5, 红心6]
-------------------------------
第8次洗牌:
切牌:
[黑桃1, 红心11, 黑桃3, 红心12, 红心13, 草花1, 黑桃6, 黑桃11]
[黑桃10, 黑桃2, 红心3, 方片13, 草花2, 草花3, 草花4, 草花5, 草花6, 黑桃12, 红心7, 方片2, 黑桃13, 黑桃7, 草花7, 红心1, 红心8, 红心2, 红心9, 方片3, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片4, 黑桃4, 方片6, 方片5, 方片10, 红心10, 方片7, 方片8, 方片9, 黑桃5, 草花12, 草花13, 红心4, 方片1, 方片11, 方片12, 黑桃9, 红心5, 红心6]
结果:[黑桃1, 红心11, 黑桃3, 红心12, 红心13, 黑桃10, 黑桃2, 草花1, 红心3, 方片13, 黑桃6, 草花2, 草花3, 草花4, 黑桃11, 草花5, 草花6, 黑桃12, 红心7, 方片2, 黑桃13, 黑桃7, 草花7, 红心1, 红心8, 红心2, 红心9, 方片3, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片4, 黑桃4, 方片6, 方片5, 方片10, 红心10, 方片7, 方片8, 方片9, 黑桃5, 草花12, 草花13, 红心4, 方片1, 方片11, 方片12, 黑桃9, 红心5, 红心6]
-------------------------------
第9次洗牌:
切牌:
[黑桃1, 红心11, 黑桃3, 红心12, 红心13, 黑桃10, 黑桃2, 草花1, 红心3, 方片13, 黑桃6, 草花2, 草花3, 草花4, 黑桃11, 草花5, 草花6, 黑桃12, 红心7, 方片2, 黑桃13, 黑桃7, 草花7, 红心1, 红心8, 红心2, 红心9, 方片3, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片4]
[黑桃4, 方片6, 方片5, 方片10, 红心10, 方片7, 方片8, 方片9, 黑桃5, 草花12, 草花13, 红心4, 方片1, 方片11, 方片12, 黑桃9, 红心5, 红心6]
结果:[黑桃1, 红心11, 黑桃3, 黑桃4, 方片6, 红心12, 方片5, 红心13, 黑桃10, 黑桃2, 方片10, 红心10, 方片7, 方片8, 方片9, 草花1, 红心3, 方片13, 黑桃5, 草花12, 草花13, 红心4, 黑桃6, 草花2, 草花3, 草花4, 黑桃11, 方片1, 草花5, 草花6, 黑桃12, 红心7, 方片2, 方片11, 黑桃13, 方片12, 黑桃9, 红心5, 红心6, 黑桃7, 草花7, 红心1, 红心8, 红心2, 红心9, 方片3, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片4]
-------------------------------
第10次洗牌:
切牌:
[黑桃1, 红心11, 黑桃3, 黑桃4, 方片6, 红心12, 方片5, 红心13, 黑桃10, 黑桃2, 方片10, 红心10, 方片7, 方片8, 方片9, 草花1, 红心3, 方片13, 黑桃5, 草花12, 草花13, 红心4, 黑桃6, 草花2, 草花3, 草花4, 黑桃11, 方片1, 草花5, 草花6, 黑桃12, 红心7, 方片2, 方片11, 黑桃13, 方片12]
[黑桃9, 红心5, 红心6, 黑桃7, 草花7, 红心1, 红心8, 红心2, 红心9, 方片3, 草花8, 草花9, 草花10, 草花11, 黑桃8, 方片4]
结果:[黑桃1, 红心11, 黑桃9, 红心5, 红心6, 黑桃7, 黑桃3, 黑桃4, 方片6, 红心12, 草花7, 红心1, 红心8, 红心2, 红心9, 方片5, 方片3, 草花8, 红心13, 黑桃10, 黑桃2, 方片10, 红心10, 草花9, 方片7, 方片8, 方片9, 草花1, 草花10, 草花11, 黑桃8, 红心3, 方片13, 黑桃5, 方片4, 草花12, 草花13, 红心4, 黑桃6, 草花2, 草花3, 草花4, 黑桃11, 方片1, 草花5, 草花6, 黑桃12, 红心7, 方片2, 方片11, 黑桃13, 方片12]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -