import java.util.Scanner;
公共类MathFun { public static void main(String [] args){
Scanner input = new Scanner(System.in);
int x = 1;
System.out.println(" Enter a math operation: ");
String expr = input.next();
int pos = expr.indexOf("-");
if ( pos > 0) {
if (pos == expr.indexOf("+")) {
int op1 = Integer.parseInt(expr.substring(0, pos));
int op2 = Integer.parseInt(expr.substring( pos + x , expr.length()));
System.out.println( op1 + op2);
} else
if (pos == expr.indexOf("-")) {
int op1 = Integer.parseInt(expr.substring(0, pos));
int op2 = Integer.parseInt(expr.substring( pos + x , expr.length()));
System.out.println( op1 - op2);
} else
if (pos == expr.indexOf("/")) {
int op1 = Integer.parseInt(expr.substring(0, pos));
int op2 = Integer.parseInt(expr.substring( pos + x , expr.length()));
System.out.println( op1 / op2);
} else
if (pos == expr.indexOf("%")) {
int op1 = Integer.parseInt(expr.substring(0, pos));
int op2 = Integer.parseInt(expr.substring( pos + x , expr.length()));
System.out.println( op1 % op2);
}
else {
System.out.println(" Invalid operation ");
}
}
}
} 编译,但我很难初始化pos = expr.inexOf();.我将如何解决这个问题,以便我的if语句开始工作并能够使用字符串?非常感谢你的帮助!
答案 0 :(得分:0)
问题在于int pos = expr.indexOf(“ - ”); 我相信如果你把输入作为“25-20”它会起作用。 U必须首先运行循环才能找到正确的运算符。