首页 > 解决方案 > 如何让变量记住结果

问题描述

我的程序是“战略游戏”,用户可以在其中制作自己的军队和头像。我的问题是当用户必须为他的军队购买士兵时。我不知道如何让变量记住结果,用户可以购买另一个士兵。我来自捷克共和国,所以在线翻译寻求帮助。

int zustatek = 0; //residue

int penize = 50;//money
ArrayList<Vojak> armada = new ArrayList<Vojak>();//army
do {
System.out.println("Jaké si vybereš?"); //What you choose
System.out.println("Pešák-1(10)"); //plebs
System.out.println("Lučištník-2 (15)"); //archer
System.out.println("Jezdectvo-3 (30)"); //cavalry
System.out.println("Težká jednotka-4 (50)"); //hevy soldier
int volbaVojaku = Integer.parseInt(sc.nextLine());//choose soldiers
Vojak vyberArmady = null;//picking soldiers
switch(volbaVojaku) {
case 1:

      System.out.println("A kolik jich cheš?");//how many soldiers do you want?
        int pocet = Integer.parseInt(sc.nextLine());//number of soldiers
for(int i =0; i < pocet ;i++) {
     Zbran mec = new Zbran(0,0,0,10,"meč");//weapon
    Vojak pesak = new Pesak(nazevJednotky,0,0,0,mec,vysledekBrneni);//soldier
    vyberArmady = pesak;
    armada.add(pesak);//army
    System.out.println(pesak);
 }

pocet *=10;
zustatek = penize - pocet;
System.out.println("Zůstalo ti: " + zustatek);//Result how many user have
break;

标签: javaobjectvariablesswitch-statement

解决方案


我认为您应该将剩余资金计算更改为:

pocet *=10;
penize = penize - pocet;
System.out.println("Zůstalo ti: " + penize);//Result how many user have

每次购买时,初始货币价值(penize)都会减少并节省下来,您实际上不必节省剩余的钱。


推荐阅读