我正在編寫一個Java貨幣兌換程序,其中我爲用戶編程3種外幣,以便用戶從美元兌換成外幣。我想打出來的while
當用戶輸入「000」如何改善我的貨幣兌換計劃?
import java.lang.StringBuffer;
import java.io.IOException;
class Project6_5
{
public static void main(String args[])
{
int usa, amount, stop;
System.out.println("This is a Currencies Exchange program");
System.out.println("From US Dollar to Foreign Currency"); //Explaining to user
stop = 0;
while(true/*stop!=999*/)
{
try
{
System.out.print("What is your amount of US dollars?");
System.out.println(" 000 to end Program");
usa = Integer.parseInt(GCS());
System.out.println("What currency would you prefer?");
System.out.println("Avaliable currencies are:");
System.out.println("1 for Japanese Yen, 2 for Taiwanese Dollar, 3 for Euro");
amount = Integer.parseInt(GCS());
if(amount == 1)
{
System.out.println("Exchange rate");
System.out.println("80.75 Yen for 1 Dollar");
System.out.println(" ");
System.out.println("Your Yen is "+ usa*80.75);
System.out.println("________________________________________");
}
if(amount == 2)
{
System.out.println("Exchange rate");
System.out.println("30.125 NTD for 1 Dollar");
System.out.println(" ");
System.out.println("Your NTD is "+ usa*30.125);
System.out.println("________________________________________");
}
if(amount == 3)
{
System.out.println("Exchange rate");
System.out.println("1.4201 Euro for 1 Dollar");
System.out.println(" ");
System.out.println("Your Euro is "+ usa*1.4201);
System.out.println("________________________________________");
}
if(usa==000)
{
System.out.println("End Program");
return;
}
}
catch(NumberFormatException NFE) //catch if integer's not number
{
System.err.println("ERROR");
System.err.println("Type in Integer only");
}
catch(Exception E) //catch Genaral Error
{
System.err.println("ERROR");
}
}
}//end of Main
public static String GCS() //GetConsoleString User-Input
{
int noMoreInput = -1;
char enterKeyHit = '\n';
int InputChar;
StringBuffer InputBuffer = new StringBuffer(100);
try
{
InputChar = System.in.read();
while(InputChar != noMoreInput)
{
if((char)InputChar != enterKeyHit)
{
InputBuffer.append((char) InputChar);
}
else
{
InputBuffer.setLength(InputBuffer.length()-1);
break;
}
InputChar = System.in.read();
}
}//close Try(21)
catch(IOException IOX)
{
System.err.println(IOX);
}
return InputBuffer.toString();
}//end of GCS
}
我認爲你會陷入低估,因爲你沒有具體說明你認爲你的程序出了什麼問題。你需要什麼樣的建議? – John 2010-11-09 22:13:45
我認爲標題是有爭議的。它確實應該是「當用戶鍵入某個值時如何退出程序」或類似的東西。 – Catchwa 2010-11-09 22:40:33
請遵循[general](http://tinyurl.com/so-hints)問題[準則](http://meta.stackexchange.com/q/10812),陳述任何特殊的限制,顯示你所嘗試過的到目前爲止,並詢問具體是什麼令你困惑。 – 2010-11-10 00:47:01