2012-03-04 70 views
1

號碼和運營商之間的區分在Java 如果GUI輸入是這(55.55 + 23424 * 4545) 那些輸入將來自字符串被轉換爲整數。 問題是我該如何讓程序區分這個計算中的數字和運算符?在計算的java

+4

希望他們不會全部轉換爲整數,因爲55.55是不是整數... – DNA 2012-03-04 17:05:35

回答

2

您將不得不解析您之前收到的字符串,獲取不同變量中的數字和運算符。允許用戶只輸入數字併爲操作員提供按鈕可能會更簡單,因此您可以將它們視爲信號。

只要解析這種字符串(如果您允許所有類型的運算符和操作),最終都需要編寫完整的語法並從該語法生成​​解析器。

2

使用正則表達式!對數字的正則表達式:

number: [0-9]+\.?|[0-9]*\.[0-9]+ 

this tutorial如何使用正則表達式來正確地解析字符串。