以下是一个简单的 Java 发牌程序,演示了如何初始化一副牌、洗牌以及将牌平均分配给多个玩家,可以作为游戏开发的基础,帮助您了解发牌机制。

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class CardGame {
    public static void main(String[] args) {
        List<String> deck = new ArrayList<String>();
        
        // 初始化一副牌
        String[] suits = {'方块', '梅花', '红心', '黑桃'};
        String[] ranks = {'A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K'};
        for (String suit : suits) {
            for (String rank : ranks) {
                deck.add(rank + suit);
            }
        }
        
        // 洗牌
        Collections.shuffle(deck);
        
        // 发牌
        int numPlayers = 4;
        int numCardsPerPlayer = 13;
        List<List<String>> hands = new ArrayList<List<String>>();
        for (int i = 0; i < numPlayers; i++) {
            hands.add(new ArrayList<String>());
        }
        for (int i = 0; i < numCardsPerPlayer; i++) {
            for (int j = 0; j < numPlayers; j++) {
                hands.get(j).add(deck.remove(0));
            }
        }
        
        // 输出每个人的牌
        for (int i = 0; i < numPlayers; i++) {
            System.out.println('玩家 ' + (i+1) + ' 的牌是:' + hands.get(i));
        }
    }
}

这个程序首先初始化了一副牌,然后洗牌,最后将牌平均分给四个玩家。最后输出每个玩家的牌。注意,这个程序并没有打牌,只是发了牌。

Java 发牌程序:实现牌局开始前的发牌逻辑

原文地址: https://www.cveoy.top/t/topic/mJ3I 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录