首页 > 解决方案 > 如何使用方法更改变量值?有人可以给我一些提示来提高我的编码知识吗?

问题描述

我正在努力适应 Java。用 C++ 编程大约一年。我知道编程的基本部分 现在,我正在做一个简单的游戏,你选择一个数字,会生成两个随机数,如果选择的数字等于其中一个随机数,你就赢了,你会收到一些钱。休闲游戏。可悲的是,我不确定如何使用方法更改变量值。有人可以改进我的 Java 代码并告诉我为什么每次我继续玩游戏时我的价值都会恢复吗?有时,它甚至不会降低我的分值。很难迁移到不同的编程语言。对不起我的语言错误..

public static void main(String[] args) {
int array[] = {1,2,3,4,5,6,7,8,9,10};
        int money = 100;
        int moneyBet;

        int selectedNumber;
        int keepPlaying;
        boolean game = true;


        while(game) {
        System.out.println("Choose a number between 1 and 10:");
        Scanner input = new Scanner(System.in);
        selectedNumber = input.nextInt();

        System.out.println("Make a bet:");
        moneyBet = input.nextInt();

        foo(money, moneyBet, selectedNumber, array);
            System.out.println("Keep playing? YES - 1, NO - 2");
            keepPlaying = input.nextInt();
                if(keepPlaying == 1) {
                    game = true;
                } else {
                    game = false;
                    System.out.println("Game over");
                }

        }


    }
public static void foo(int money, int moneyBet, int selectedNumber, int array[]) {

                Random random = new Random();
                int randArray[];
                int randomNumber;
                randArray = new int[2];

                Scanner input = new Scanner(System.in);

                if(money < moneyBet) {
                    System.out.print("Not enough money. Try again:");
                    moneyBet = input.nextInt();
                }else {
                    money -= moneyBet;
                }

                boolean checkWin = false;

                    for(int i = 0; i < randArray.length; i++) {
                        randomNumber = random.nextInt(array.length);
                        randArray[i] = randomNumber;
                    }

                    for(int i = 0; i < randArray.length; i++) {
                        System.out.print(randArray[i] + " ");
                    }

                    for(int i = 0; i < randArray.length; i++) {
                        if(randArray[i] == selectedNumber) {
                            checkWin = true;
                        } else {
                            checkWin = false;
                        }
                    }
                    System.out.println();

                    if(checkWin) {
                        System.out.println("You won. You receive " + moneyBet * 2 + " money!");
                        System.out.println("Your money:" + money);
                        System.out.println("Keep playing? Y/N");
                    } else {
                        System.out.println("Try your luck next time..");
                        System.out.println("Your money:" + money);
                    }
        }

标签: java

解决方案


推荐阅读