第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

Java第三季—簡易撲克牌游戲

標(biāo)簽:
Java

//看来异常方面还是要好好复习一下!

package com.Puke2;

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.Scanner;
import java.util.Set;
import java.util.Map.Entry;

public class Pukes {

public static void main(String[]args){
    System.out.println("-------------简易扑克牌游戏-------------");
    Puke p=new Puke();
    Scanner inpit = new Scanner(System.in);
    System.out.println("有以下扑克牌:");
    String shu[]={"3","4","5","6","7","8","9","10","J","Q","K","A","2"};
    String hua[]={"","","",""};//花色,可能会出现乱码或者空白
    for(int i=0;i<shu.length;i++){
        for(int j=0;j<hua.length;j++){
        System.out.print(hua[j]+shu[i]+"\t");
      }
    System.out.println();
    }
    System.out.println("joker\tJOKER");
    System.out.println("----------------------");
    p.puke();
}
}

class Puke{
    private HashMap<Integer,Game> name=new HashMap<Integer,Game>();//接收玩家名字
    private ArrayList<Integer> set = new ArrayList<Integer>();//接收数字
//  ArrayList<String> list = new ArrayList<String>();//接收扑克牌集合
    HashMap<Integer,String> map=new HashMap<Integer,String>();
    private String shu[]={"3","4","5","6","7","8","9","10","J","Q","K","A","2"};//扑克牌的大小
    private String hua[]={"","","",""}; //和花色,可能会出现乱码或者空白
/**
  *玩家方法
*/
    private void name(){
        for(int i=0;i<2;i++){//测试两位玩家
        Scanner input =new Scanner(System.in);
//      System.out.print("请第"+(i+1)+"位玩家输入id:");
//      int id=0;
//      try{
//          id=input.nextInt();
//      }catch(InputMismatchException e){
//          System.out.println("异常!请重新运行!");//异常处理方面还是不太扎实
//      }
        System.out.print("请第"+(i+1)+"位玩家输入昵称:");
        String name1=input.next();
        Game gm=new Game();
        //代入玩家类的对象中
        name.put((i+1),new Game(name1));//然后将类带入HashMap中
        }
    }
   /**
    *扑克牌方法
   */
    public void puke(){

    name();
    int a = 0;
    for(int i=0;i<shu.length;i++){
        for(int j=0;j<hua.length;j++){//接收所有扑克牌
        a++;
        //System.out.print(a+" ");
        StringBuffer sb=new StringBuffer("");
        StringBuffer sb2=sb.append(hua[j]+shu[i]+"   ");//将牌面和花色融为一体
        String str=sb2+"";
        //测试带入的是否正确
        //System.out.print(a+str);
        map.put(a,str);//将代号和牌面放入HashMap容器中
        set.add(a);//将代号放入ArrayList容器中,方便后期洗牌
      }
    //System.out.println();
     }
    map.put(shu.length*hua.length+1,"joker");
    set.add(shu.length*hua.length+1);
//  System.out.println(shu.length*hua.length+1);
    map.put(shu.length*hua.length+2,"JOKER");
    set.add(shu.length*hua.length+2);
    //System.out.println(set);
    //测试输出
/**
    Set<Entry<Integer, String>>  entrys=map.entrySet();//如果要输出键值对,一般用这种方法
    for (Entry<Integer, String> entry :  entrys) {
    System.out.println(entry.getKey()+"--"+entry.getValue());
        }
*/
    System.out.println();
    int b=0;
    System.out.println("-------------开始洗牌--------------");
    Collections.shuffle(set);//写在外面,防止随机生成相同的牌
    System.out.println("-------------洗牌结束--------------");
    for(int i=0;i<2;i++){
        for(int j=0;j<2;j++){
        System.out.print("玩家"+name.get(j+1)+"摸牌:");
            b++;
            System.out.println(map.get(set.get(b)));//测试随机生成的牌
    }
    }
    System.out.println("-------------公布获胜者---------------");
    System.out.println();
        System.out.print("玩家"+name.get(1)+"最大的牌是:");
        if(set.get(1)-set.get(3)>0){
            System.out.print(map.get(set.get(1)));
        }else{
            System.out.print(map.get(set.get(3)));
        }
        System.out.println();
        System.out.print("玩家"+name.get(2)+"最大的牌是:");
        if(set.get(2)-set.get(4)>0){
            System.out.print(map.get(set.get(2)));
        }else{
            System.out.print(map.get(set.get(4)));
        }
        System.out.println();
        //测试计算是否真确

    //System.out.println(set.get(1)+" "+set.get(2)+" "+set.get(3)+" "+set.get(4)+" ");
        System.out.println("获胜者是:");
        if(set.get(1)-set.get(3)>0&&set.get(2)-set.get(4)>0){//当都是摸得第一张牌大

            if(set.get(1)-set.get(2)>0){
                System.out.println(name.get(1));
            }else{
                System.out.println(name.get(2));    
            }

        }else if(set.get(1)-set.get(3)>0&&set.get(2)-set.get(4)<0){//当第一位玩家摸得第一张牌,第二位玩家摸得第二张牌大

            if(set.get(1)-set.get(4)>0){
                System.out.println(name.get(1));
            }else{
                System.out.println(name.get(2));    
            }

        }else if(set.get(1)-set.get(3)<0&&set.get(2)-set.get(4)>0){//与上面的相反

            if(set.get(3)-set.get(2)>0){
                System.out.println(name.get(1));
            }else{
                System.out.println(name.get(2));    
            }

      }else if(set.get(1)-set.get(3)<0&&set.get(2)-set.get(4)<0){//最后一种情况

          if(set.get(3)-set.get(4)>0){    
                System.out.println(name.get(1));
            }else{
                System.out.println(name.get(2));    
            }
}
}
}
class Game{//玩家类
//  HashMap<Integer,String> name=new HashMap<Integer,String>();

private String name;
public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public Game() {

}
public Game(String name) {

    this.name = name;
}
@Override
public String toString() {
    return name;
}

}

运行结果:

點(diǎn)擊查看更多內(nèi)容
2人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報(bào)

0/150
提交
取消