「ゴッド・オブ・ギャンブラー」を見た学生なら誰でも知っていると思います。魔法に似た魔法の力。 ######はい!今日私たちが話そうとしている魔法のことは、特別な機能 (???ではありません)
です: Landlord のカード シャッフルと配付システムです。 ! !
2. はじめに
トランプのデッキには合計 54 枚のカードがあります。カードはスートと数字または文字で構成されています。スートは 4 つあります: ♠、♣、♦、♥、スペード、クラブを表します、ダイヤモンド、ハートをそれぞれ表しており、♛は大きな王、♝は小さな王を意味します。
Landlord ゲームには 3 人のプレイヤーが参加しています。まず、54 枚のカードの順序がシャッフルされます。次に、各人が順番にカードを 1 枚引きます。残りの 3 枚のカードはホール カードとして確保されます。最後に、コンソールには 3 人のプレーヤーのカードと 3 つのホール カードが印刷されています。
3. イラスト
2. カードの準備
メソッドに記述されています! ! ! 1. コード例
//准备牌
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.ArrayList;
2. データ表示
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♣ }
コード例
3. カードのシャンプーと並べ替え
//洗牌
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);import java.util.Collections;
4. カードを確認します (コンソールに出力)
//看牌
look("周润发",player1,map);
look("刘德华",player1,map);
look("周星驰",player1,map);
look("底牌",diPai,map); 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();
}2. Show アンディ・ラウ:A♣ K♣ Q♥ Q♣ J♠ J♦ J♣ 10 ♥ 10♦ 10♣ 9♠ 6♠ 6♦ 5♦ 4♦ 3♠ 3♦
スティーブン・チョウ:
A♣ K♣ Q♥ Q♣ J♠ J♦ J ♣ 10♥ 10μ 10♣ 9♠ 6 ♠ 6μ 5μ 4μ 3♠ 3μ
ハウスカード:
2♥ A♠ 7♠
以上がJavaでDoudizhuゲームのカードシャッフルと配付システムを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。