0
我有一個銀行賬戶程序,當我在學校寫它時,我正在重寫,而且我想知道如何回到程序中的一步。如何返回程序中的步驟?
所以,我創建帳戶後,選擇獲取撤銷選項,我想返回並再次獲得提示選項,這將如何完成? (見代碼註釋) 大部分謝謝..
主類:
import java.text.*;
public class BankAccountTest {
public static void main (String args[]){
NumberFormat formatter = NumberFormat.getNumberInstance();
formatter.setMaximumFractionDigits(2); // Helps formatter format for final output
formatter.setMinimumFractionDigits(2);
ConsoleReader console = new ConsoleReader(System.in);
System.out.println("Hello, would you like to make a new bank account?");
String newA = console.readLine();
if(newA.equalsIgnoreCase("yes")){
System.out.println("How much would you like to deposit initially?");
double init = console.readDouble();
BankAccount account = new BankAccount(init);
System.out.println("Your account is created, what would you like to do? /n 1: Get Balance /n 2: Get Account ID /n 3: Make a Withdrawl /n 4: Make a Deposit?");
String option = console.readLine();
if(option.equalsIgnoreCase("get balance")){
System.out.println(account.getBalance()); //go back to the if after this excecutes
}
}
}
}
銀行賬戶類:
public class BankAccount {
public static int bankID = 0;
//constructor called by BankAccount michaelsBank = new BankAccount();
public BankAccount(){
balance = 0;
accnum = bankID++;
}
//Constructs a bank account with an initial deposit, will be used if given a number for a parameter
public BankAccount(double initialBalance){
balance = initialBalance;
}
public void deposit(double amount){
balance = balance + amount;
}
public void withdraw(double amount){
balance = balance - amount;
}
public double getBalance(){
return balance;
}
public int getID(){
return accnum;
}
private int accnum;
private double balance;
}
控制檯讀取器類:
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.IOException;
/**
A class to read strings and numbers from an input stream.
This class is suitable for beginning Java programmers.
It constructs the necessary buffered reader,
handles I/O exceptions, and converts strings to numbers.
*/
public class ConsoleReader
{ /**
Constructs a console reader from an input stream
such as System.in
@param inStream an input stream
*/
public ConsoleReader(InputStream inStream)
{ reader = new BufferedReader
(new InputStreamReader(inStream));
}
/**
Reads a line of input and converts it into an integer.
The input line must contain nothing but an integer.
Not even added white space is allowed.
@return the integer that the user typed
*/
public int readInt()
{ String inputString = readLine();
int n = Integer.parseInt(inputString);
return n;
}
/**
Reads a line of input and converts it into a floating-
point number. The input line must contain nothing but
a nunber. Not even added white space is allowed.
@return the number that the user typed
*/
public double readDouble()
{ String inputString = readLine();
double x = Double.parseDouble(inputString);
return x;
}
/**
Reads a line of input. In the (unlikely) event
of an IOException, the program terminates.
@return the line of input that the user typed, null
at the end of input
*/
public String readLine()
{ String inputLine = "";
try
{ inputLine = reader.readLine();
}
catch(IOException e)
{ System.out.println(e);
System.exit(1);
}
return inputLine;
}
private BufferedReader reader;
}
你瞭解了循環嗎?這是關鍵... –
@jonSkeet的確我有,但我將如何在這裏實現它? – sirnomnomz
只是一個可憐的提示:'while(!IneedToExit){int o = getOption();開關(o){foo1:.. foo2:... foo3:...}}'應該幫助你一點.. – LMG