java数组发牌

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  //将数组的内容和人名一起冒泡排序
 for(int j=i+1;j  if(c[i]  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  //输出结果

 
if(i==3){
System.out.print(d[i]);
}else{
 //System.out.print(d[i]+":"+c[i]+" ");
 System.out.print(d[i]+">");
}
 }
 }
  }

你可能感兴趣的:(java小项目)