2013-04-25 33 views
0

我对Java非常新(我有JavaScript/HTML/CSS/SQL/PHP和C#的经验)。为计算器解析控制台输入

所以我想使一个计算器,其中,所述用户键入命令,例如:

计算值> 15 + 9

该方案具有处理用户输入,并提供其结果在上面的例子中,这将是24。

我知道如何构建一个switch声明或if -cascade来决定要处理哪个操作(是否必须计数/分/ ...),并且我也知道如何显示结果。

但我的问题是解析来自用户的输入。我想输入解析成NUMBER1 = 15操作= “+”NUMBER2 = 9。 我该如何解决这个问题?

扩展问题:我该如何解决这个问题:
例子:

钙> 15 + 8 + 4 + 6 + 8

回答

0

你可以尝试以下方法:

代码:

public class Calculator{ 
    public static void main(String[] args){ 
     String s = null; 
     for(System.out.print("calc>");!(s = System.console().readLine()).equalsIgnoreCase("exit");System.out.print("calc>")) 
     { 
      //parse the string s and do the calculation. Output the calculated value in new line. 
      //System.out.println(s); 
     } 
    } 

} 

样品输出:

$ javac Calculator.java 
$ java Calculator 
calc>12+13 
12+13 
calc>1+3 
1+3 
calc>exit 
$ 

(注:数值计算未完成)