Java 变量显示,但我不显示';我不想让它表现出来

Java 变量显示,但我不显示';我不想让它表现出来,java,Java,我正在为21点游戏编写代码 我已经做了必要的switch语句来生成一张随机卡片,并为它们设置了一个变量,这样我就不必继续复制和粘贴 我的问题是,每当我按run时,它都会显示一个0,然后显示生成的卡。我知道这是因为我把playerCard1设置为零,但我不知道如何摆脱它 这是我的代码,如果有帮助的话 public class var { public static void main(String[] args) { int playerCard1 = 0;

我正在为21点游戏编写代码

我已经做了必要的switch语句来生成一张随机卡片,并为它们设置了一个变量,这样我就不必继续复制和粘贴

我的问题是,每当我按run时,它都会显示一个0,然后显示生成的卡。我知道这是因为我把playerCard1设置为零,但我不知道如何摆脱它

这是我的代码,如果有帮助的话

public class var {

    public static void main(String[] args) {

        int playerCard1 = 0;
        int suit = 0;
        char suitChar = ' ';
        int num = playerCard1;

        //making playerCard1 generate a random number between 1 and 13
        playerCard1 = (int)(Math.random() * 13 + 1);

        //making suit generate a random number between 1 and 4 for first card
        suit = (int)(Math.random() * 4 + 1);

        System.out.println(num);

        //switch statements for suit of player's first card

        switch (suit){
            case 1: suitChar = 'D'; //diamonds
                break;

            case 2: suitChar = 'S'; //spades
                break;

            case 3: suitChar = 'H'; //hearts
                break;

            case 4: suitChar = 'C'; //clubs
                break;


        }//end of switch statements for suit of player's first card 
        switch (playerCard1){
        case 1: System.out.print("A" + suitChar);
            break;

        case 2: System.out.print("2" + suitChar );
            break;

        case 3: System.out.print("3" + suitChar);
        break;

        case 4: System.out.print("4" + suitChar );
            break;

        case 5: System.out.print("5" + suitChar );
            break;

        case 6: System.out.print("6" + suitChar );
            break;

        case 7: System.out.print("7" + suitChar);
            break;

        case 8: System.out.print("8" + suitChar );
            break;

        case 9: System.out.print("9" + suitChar);
            break;

        case 10: System.out.print("10" + suitChar );
            break;

        case 11: System.out.print("J" + suitChar );
            break;

        case 12: System.out.print("Q" + suitChar);
            break;

        case 13: System.out.print("K" + suitChar);
            break;


            }//end of switch statements for playerCard1


    }//end of main

}//end of class
删除该行:

 System.out.println(num);
这就是在您不希望打印时打印
0

您可以将其更改为:

 System.out.println(playerCard1);
要打印所选卡的随机数,请查看。

Math.random()*13+1
不是生成随机值范围的有效方法。改用
rand.nextInt((max-min)+1)+min
Math.random()
还使用
rand.nextInt
internallySystem.out.println(num);变量是否已生成,因此我不必反复复制和粘贴同一个switch语句