输出一个JAVA 方法,表达式如1+3-2 通过正则表达式拆分出数据放到数组中
时间: 2024-09-25 20:04:53 浏览: 23
在Java中,你可以创建一个方法来接收一个包含数学运算符的字符串,然后使用正则表达式将其拆分为操作数部分,并存储在数组中。这里是一个简单的示例:
```java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ExpressionParser {
public int[] parseExpression(String expression) {
String[] parts = expression.split("\\D+"); // 使用非数字字符(\D 表示非数字字符)作为分隔符
if (parts.length < 2) {
throw new IllegalArgumentException("Invalid expression. At least two operands are required.");
}
List<Integer> numbers = new ArrayList<>();
for (String part : parts) {
try {
numbers.add(Integer.parseInt(part));
} catch (NumberFormatException e) {
throw new IllegalArgumentException("Invalid number in expression: " + part);
}
}
int[] resultArray = new int[numbers.size()];
for (int i = 0; i < numbers.size(); i++) {
resultArray[i] = numbers.get(i);
}
return resultArray;
}
}
```
这个`parseExpression`方法会返回一个整数数组,其中包含了表达式中的每个数字。如果表达式不符合预期格式(比如只有一个操作数),方法会抛出异常。
阅读全文