gpt4 book ai didi

java - 一个简单的二十一点游戏

转载 作者:行者123 更新时间:2023-12-02 02:05:16 24 4
gpt4 key购买 nike

我正在使用面向对象编程构建二十一点游戏。

到目前为止我写了这个:

import java.util.Random;

public class Blackjack {
public static String[] Card = new String[12];
public static String[] Suits = {"D", "H", "S", "C"};


public void setCard(String[] c) {
Card = c;
Card[0] = "A";
Card[1] = "2";
Card[2] = "3";
Card[3] = "4";
Card[4] = "5";
Card[5] = "6";
Card[6] = "7";
Card[7] = "8";
Card[8] = "9";
Card[9] = "10";
Card[10] = "J";
Card[11] = "Q";
Card[12] = "K";
}

public static void main(String[] args) {
System.out.println("Welcome to Blackjack.");

Random rand = new Random();

int card_Sign1 = (int) (Math.random() * 13);
int card_Sign2 = (int) (Math.random() * 13);

int Suit1 = (int) (Math.random() * 4);
int Suit2 = (int) (Math.random() * 4);

System.out.print(Card[card_Sign1]);

}
}

我得到的输出是Welcome to Blackjack 然后是null。我想知道是否可以获得有关如何解决此问题的一些帮助。

最佳答案

正如 csmckelvey 在评论中所说,您需要在主方法中调用 setCard 方法。否则,卡片数组永远不会获得其初始值。

您还有另一个问题——您声明数组的大小为 12:

public static String[] Card = new String [12];

但随后您尝试在 setCard 中为其分配 13 个值。您需要将其大小更改为 13。

此外,setCard() 不需要参数,您只需设置 Card 的值即可。

除此之外,看起来不错,继续努力!

关于java - 一个简单的二十一点游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50936179/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com