Rumah  >  Artikel  >  Java  >  Bagaimana untuk melaksanakan sistem shuffling dan urusan kad permainan Doudizhu di Jawa

Bagaimana untuk melaksanakan sistem shuffling dan urusan kad permainan Doudizhu di Jawa

PHPz
PHPzke hadapan
2023-04-24 15:55:07975semak imbas

    1. Pertarungan Tuan Tanah

    1. a Kuasa ajaib yang serupa dengan sihir.

    Betul! Perkara ajaib yang akan kita bincangkan hari ini ialah: fungsi khas (bukan????)

    ialah: sistem shuffling dan urusan kad Tuan Rumah! ! !

    2. Pengenalan

    Saya percaya ramai orang boleh bermain permainan poker klasik "Dudizhu". adalah untuk mengikuti peraturan Doudizhu Peraturan tuan tanah melengkapkan proses merombak dan menangani kad.

    Sedek kad permainan mempunyai sejumlah 54 kad. Kad ini terdiri daripada sut dan nombor atau huruf Terdapat empat sut: ♠, ♣, ♦ dan ♥, yang mewakili penyodok, kayu, berlian. , dan hati masing-masing ♛ bermaksud raja besar, ♝ bermaksud raja kecil.

    Terdapat tiga pemain yang mengambil bahagian dalam permainan Tuan Rumah Pertama, susunan 54 kad dikocok Kemudian setiap orang bergilir-gilir untuk mencabut kad yang selebihnya tiga pemain dicetak pada kad konsol dan tiga kad lubang.

    3. Ilustrasi

    Bagaimana untuk melaksanakan sistem shuffling dan urusan kad permainan Doudizhu di Jawa 2. Sediakan kad

    Kod berikut semuanya ditulis dalam kaedah

    ! ! !

    main1. Contoh kod

    Nota: Kod di sini perlu mengimport dua pakej:
    //准备牌
            HashMap<Integer,String> map=new HashMap<>();
            ArrayList<Integer> list=new ArrayList<>();
            map.put(1,"大王");
            map.put(2,"小王");
            list.add(1);
            list.add(2);
    
            String[] numbers={"2","A","K","Q","J","10","9","8","7","6","5","4","3"};
            String[] colors={"♠","♥","♦","♣"};
    
            int index=3;
            for (String number : numbers) {
                for (String color : colors) {
                    map.put(index,number + color);
                    list.add(index);
                    index++;
                }
            }

    import java.util.HashMap;

    import java.util.ArrayList;2. Paparan data

    Gunakan pernyataan

    dan

    untuk memaparkan data seperti berikut: System.out.println(map);System.out.println(list);

    {1=大王, 2=小王, 3= 2 ♠, 4=2♥, 5=2♦, 6=2♣, 7=A♠, 8=A♥, 9=A♦, 10=A♣, 11=K♠, 12=K♥, 13= K ♦, 14=K♣, 15=Q♠, 16=Q♥, 17=Q♦, 18=Q♣, 19=J♠, 20=J♥, 21=J♦, 22=J♣, 23= 10 ♠, 24=10♥, 25=10♦, 26=10♣, 27=9♠, 28=9♥, 29=9♦, 30=9♣, 31=8♠, 32=8♥, 33= 8 ♦, 34=8♣, 35=7♠, 36=7♥, 37=7♦, 38=7♣, 39=6♠, 40=6♥, 41=6♦, 42=6♣, 43= 5 ♠, 44=5♥, 45=5♦, 46=5♣, 47=4♠, 48=4♥, 49=4♦, 50=4♣, 51=3♠, 52=3♥, 53= 3 ♦, 54=3♣}
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 , 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 4, 3, 45 , 46, 47, 48, 49, 50, 51, 52, 53, 54]


    3. Mencuci kad dan menyusun

    Contoh kod

    <.>Nota: Kod di sini perlu mengimport pakej:

    	//洗牌
    	Collections.shuffle(list);
    	
    	//发牌
    	ArrayList<Integer> diPai=new ArrayList<>();
    	ArrayList<Integer> player1=new ArrayList<>();
    	ArrayList<Integer> player2=new ArrayList<>();
    	ArrayList<Integer> player3=new ArrayList<>();
    	
    	for (int i = 0; i < list.size(); i++) {
    	    if(i>=51){
    	        diPai.add(list.get(i));
    	    }else if(i%3==0){
    	        player1.add(list.get(i));
    	    }else if(i%3== 1){
    	        player2.add(list.get(i));
    	    }else {
    	        player3.add(list.get(i));
    	    }
    	}
    	//排序
        Collections.sort(diPai);
        Collections.sort(player1);
        Collections.sort(player2);
        Collections.sort(player3);

    4 Periksa kad (cetak ke konsol) import java.util.Collections;

    Contoh kod

    Antaranya, untuk mencipta kaedah

    :
    //看牌
        look("周润发",player1,map);
        look("刘德华",player1,map);
        look("周星驰",player1,map);
        look("底牌",diPai,map);

    look 2. Tunjukkan

      private static void look(String name, ArrayList<Integer> list, HashMap<Integer, String> map) {
            System.out.println(name+":");
            for (Integer number : list) {
                System.out.print(map.get(number)+" ");
            }
            System.out.println();
        }

    Chow Yun-fat:

    A♣ K♣ Q♥ Q ♣ J♠ J♦ J♣ 10♥ 10♦ 10♣ 9♠ 6♠ 6♦ 5♦ 4♦ 3♠ 3♦
    Andy Lau:

    A J♣ Q♣ ♠ J♦ J♣ 10 ♥ 10♦ 10♣ 9♠ 6♠ 6♦ 5♦ 4♦ 3♠ 3♦
    Stephen Chow:
    A♣ K♦ Q♥ Q♣♦ J♥ Q♣♦ 10♦ 10♣ 9♠ 6 ♠ 6♦ 5♦ 4♦ 3♠ 3♦
    Kad hos:
    2♥ A♠ 7♠

    Atas ialah kandungan terperinci Bagaimana untuk melaksanakan sistem shuffling dan urusan kad permainan Doudizhu di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Kenyataan:
    Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam