2013-11-01 26 views
0

我添加了两个随机数(由我的程序生成)。操作变量是一个字符串,用户可以输入他们想要的数学问题类型(+, - 或*)。这只是我整个计划的一部分。如何解决这些不兼容的数据类型?

public static double getCorrectAnswer(int operand1, int operand2, String operation){ 
    double correctResponse; 
    correctResponse =(operand1 + (operation) + operand2); 

    return correctResponse; 
} 
+0

使用switch语句(或if/else语句块)上的操作,并做相应的数学运算 – clcto

回答

3

使用if

if (operand.equals("+")) { 
    ... 
} 
else if (operand.equals("*")) { 
    ... 
} 
... 

你也可以使用一个开关。

请注意,您应该返回一个int,因为添加和相乘整数将返回一个整数。

+0

或者长整数如果相乘的整数变得相当大:) –

+0

只有当至少有一个操作数被提升为long时,它才会返回一个长整数。否则,它会溢出,但仍然返回一个(不正确的)int。 –

+0

我意识到它会返回一个int,但结果可能不正确。 –

0

这可能是太多了你,但你可以看看在正式的语言解析器如ANTLR