如何将包含星号的字符串转换为整数?

How to convert a string that contains an asterisk to an integer?

我有一个字符串

String numAsString = "8 * 9";

我想把它转换成整数,所以当我打印整数时

int numAsInt = (the code I am asking for);
System.out.println(numAsInt);

输出将是

72

我试过 parseInt 和 valueOf,但都给出了星号的异常原因。 如果您不知道,星号表示乘法。
有办法吗?

按星号解析字符串并乘以部分:

String input = "8 * 9";
String parts[] = input.split("\*");
int result = 1;
for(String part : parts)
    result *= Integer.parseInt(part.trim());
System.out.println(result);

你可以使用这样的东西,很简单:

String[] values = numAsString.split("\*");
numAsInt = Integer.valueOf(values[0].trim()) * Integer.valueOf(values[1].trim());

但是如果你有一个计算或带有括号、加号、减号等的东西,你可以使用这个: Running JavaScript code in java
我想这对你有帮助。