java数组发牌
来源:互联网 发布:一键越狱软件 编辑:程序博客网 时间:2024/06/05 18:02
package cn.feicui.edu;
import java.util.Arrays;
import java.util.Random;
public class FaPai {
public static Random a1= new Random();
//定义花色
public static String[] color=new String[]{"♥","♠","♦","♣"};
//定义牌
public static String[] number=new String[]{"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
//y用来储存牌
public static String[] a=new String[54];
//动态数组
public static String[] a2=Arrays.copyOf(number, number.length+42);
//玩牌人的名字
public static String[] name=new String[]{"BOB","Mar","Kite","pe"};
//用来存储随机的塞子
public static int[] c=new int[4];
//用来存储人名
public static String[] d=new String[20];
public static void main(String[]args){
//主函数
chucun();
xipai();
fapai();
paixu();
}
public static void chucun(){
//循环产生手牌
for(int i=0;i<54;i++){
if(i==52){
a[i]="小王";
}else if(i==53){
a[i]="大王";
}else{
a[i]=number[i%13]+color[i/13];
}
}
}
public static void xipai(){
//循环实现打乱洗牌,主要方法就是采用1000次换位置
int b=a1.nextInt(52);
for(int j=0;j<1000;j++){
String temp="";
temp=a[0];
a[0]=a[b];
a[b]=temp;
b=a1.nextInt(52);
}
/* for(int i=0;i<52;i++){
if(i %13==0){
System.out.print("\n");
}
System.out.print(" "+a[i]);
}
System.out.print("\n");
*/
}
public static void fapai(){
//实现循环输出四个人
for(int j=0;j<4;j++){
System.out.println(name[j]+":");
for(int i=0;i<13;i++){
System.out.print(a[j+4*i]);
}
System.out.print("\n");
}
}
public static void paixu(){
//随机丢塞子
int temp=0;
String te="";
System.out.println("投掷筛子,大的先走");
for(int i=0;i<4;i++){
//随机一个塞子存储
c[i]=a1.nextInt(6)+1;
//人名的存储
d[i]="玩家"+(i+1);
System.out.println(d[i]+"投掷的点数");
System.out.println(""+c[i]);
}
for(int i=0;i<c.length-1;i++){
//将数组的内容和人名一起冒泡排序
for(int j=i+1;j<c.length;j++){
if(c[i]<c[j]){
temp=c[i];
c[i]=c[j];
c[j]=temp;
te=d[i];
d[i]=d[j];
d[j]=te;
}
}
}
for(int i=0;i<c.length;i++){
//输出结果
if(i==3){
System.out.print(d[i]);
}else{
//System.out.print(d[i]+":"+c[i]+" ");
System.out.print(d[i]+">");
}
}
}
}
import java.util.Arrays;
import java.util.Random;
public class FaPai {
public static Random a1= new Random();
//定义花色
public static String[] color=new String[]{"♥","♠","♦","♣"};
//定义牌
public static String[] number=new String[]{"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
//y用来储存牌
public static String[] a=new String[54];
//动态数组
public static String[] a2=Arrays.copyOf(number, number.length+42);
//玩牌人的名字
public static String[] name=new String[]{"BOB","Mar","Kite","pe"};
//用来存储随机的塞子
public static int[] c=new int[4];
//用来存储人名
public static String[] d=new String[20];
public static void main(String[]args){
//主函数
chucun();
xipai();
fapai();
paixu();
}
public static void chucun(){
//循环产生手牌
for(int i=0;i<54;i++){
if(i==52){
a[i]="小王";
}else if(i==53){
a[i]="大王";
}else{
a[i]=number[i%13]+color[i/13];
}
}
}
public static void xipai(){
//循环实现打乱洗牌,主要方法就是采用1000次换位置
int b=a1.nextInt(52);
for(int j=0;j<1000;j++){
String temp="";
temp=a[0];
a[0]=a[b];
a[b]=temp;
b=a1.nextInt(52);
}
/* for(int i=0;i<52;i++){
if(i %13==0){
System.out.print("\n");
}
System.out.print(" "+a[i]);
}
System.out.print("\n");
*/
}
public static void fapai(){
//实现循环输出四个人
for(int j=0;j<4;j++){
System.out.println(name[j]+":");
for(int i=0;i<13;i++){
System.out.print(a[j+4*i]);
}
System.out.print("\n");
}
}
public static void paixu(){
//随机丢塞子
int temp=0;
String te="";
System.out.println("投掷筛子,大的先走");
for(int i=0;i<4;i++){
//随机一个塞子存储
c[i]=a1.nextInt(6)+1;
//人名的存储
d[i]="玩家"+(i+1);
System.out.println(d[i]+"投掷的点数");
System.out.println(""+c[i]);
}
for(int i=0;i<c.length-1;i++){
//将数组的内容和人名一起冒泡排序
for(int j=i+1;j<c.length;j++){
if(c[i]<c[j]){
temp=c[i];
c[i]=c[j];
c[j]=temp;
te=d[i];
d[i]=d[j];
d[j]=te;
}
}
}
for(int i=0;i<c.length;i++){
//输出结果
if(i==3){
System.out.print(d[i]);
}else{
//System.out.print(d[i]+":"+c[i]+" ");
System.out.print(d[i]+">");
}
}
}
}
阅读全文
0 0
- java数组发牌
- java桥牌发牌算法
- Java 扑克牌发牌
- Java发牌游戏代码
- 发牌算法(java)
- Java(发牌机器)
- 魔术师发牌 Java实现
- java实现洗牌 发牌
- 实现斗地主发牌(java)
- Java 扑克发牌算法实现
- Java模拟斗地主发牌
- 魔术师发牌问题 java 实现
- Java-斗地主洗牌发牌
- Java简易斗地主发牌
- java斗地主 洗牌发牌
- java实现发牌洗牌功能
- java 发牌洗牌 重新排序
- JAVA实现魔术师发牌问题
- 0<0x80000000与0x80000000是32位有符号整型最小值的随记
- 权利的游戏-第七季第七集
- nuttx-smartfs
- Spark-Sql启动报错:Error creating transactional connection factory
- [Java] 静态方法与非静态方法的区别
- java数组发牌
- Linux查看程序端口占用情况
- Learn Java01
- TCP/IP协议理论
- Oaecle 命令行基础操作篇(5)
- 博弈——Nim or not Nim?
- SQL优化
- JavaWeb入门学习
- TypeScript学习笔记(二)之Browserify Gulp