Hej,
Stawiam pierwsze kroki w Jave i staram sie napisac prosty program, ktory pokazuje balance na koncie jednego uzytkownika, dane .
Mam menu glowne w ktorym jest 6 wyborow.
- opcja ma skladac depozyt...
problem jest ze moja globalna zmienna nie przechowuje wartosci...nie wiem jak to ugryzc..
Opis problemu:
kiedy wybieram opcje jeden Depozyt, dodaje np 300 to program wyswietli ile dodalem i wroci do menu glownego.
Kiedy ponownie wybieram zloz depozyt to suma 300 z jakiegos powodu nie jest zapamietana. I np dodajac znow 200 , balance na koncie jest tylko 200, a nie 500 :(
Ktos pomoze albo nakieruje co robie zle:
Oto kod:
package gasaccount;
import java.util.Scanner;
public class GasAccount {
* declaring variables*
private int intAccRefNo;
private String strNam,strAddres;
private double dblBalance,dblUnits,dblUnitcost,cashin;
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
MainMenu(); * calling main MENU *
}
static void MainMenu() *section call to display main menu *
{
menuMethod();
};
* DISPLAYING MENU *
*this portion of code displays main menu*
static void menuMethod ()
{
System.out.println(" <MENU> \n");
System.out.println(" 1 - Make a deposit ");
System.out.println(" 2 - Record meter reading ");
System.out.println(" 3 - Display balance");
System.out.println(" 4 - Account details ");
System.out.println(" 5 - Help ");
System.out.println(" 6 - Exit ");
System.out.println(" \n ");
GasAccount NewAccount = new GasAccount();
Scanner in = new Scanner (System.in);
switch ( in.nextInt() )
{
case 1: NewAccount.Deposit();
break;
case 2: NewAccount.recordUnits();
break;
case 3: NewAccount.getBalance();
break;
case 4: NewAccount.displayAccountDetails();
break;
case 5: NewAccount.helpManual();
break;
case 6: NewAccount.exitProgram();
break;
default: System.err.println ( "Unrecognized option" );
break; }
} // END OF THE MAIN MENU SECTION
-
MAKE A DEPOSIT SECTION version 1*
public void Deposit()
{Scanner input = new Scanner (System.in);
System.out.println("How much would like to deposit ?");
cashin=input.nextInt();
dblBalance=dblBalance+cashin;
System.out.println("Your new balance is: "+dblBalance + "£");
System.out.println(" \n ");
MainMenu();// return to main menu}* END OF THE MAKE A DEPOSIT SECTION *
Gdzie popelniam blad ?
Z gory dziekuje za kazda porade.