-1
我有一个计算器,我的问题是,我想以某种方式从字符串解析int,然后计算结果,我知道减法应该是第一次,但是有没有任何模式可以正确执行此操作? Java - 如何从这个字符串解析数字和字符?
我有一个计算器,我的问题是,我想以某种方式从字符串解析int,然后计算结果,我知道减法应该是第一次,但是有没有任何模式可以正确执行此操作? Java - 如何从这个字符串解析数字和字符?
您可以使用下面的代码来提取数字。
LinkedList<Integer> numbers = new LinkedList<Integer>();
Pattern p = Pattern.compile("\\d+");
String line = "9/8*9+3";
Matcher m = p.matcher(line);
numbers.clear();
while (m.find()) {
numbers.add(Integer.parseInt(m.group()));
}
与Sanjeet,不同的工具相同的方法。
List<Integer> numbers = new ArrayList<>();
String expression = "9/8*9+3";
for (String number : expression.split("[\\+-/\\*]")) {
numbers.add(Integer.parseInt(number));
}
编辑
知道,有限制的分割方法。这两个(Sajeets和我的)不会允许负数(负号将被剥离)。我们也都是整数。不过,我的方法可以改为使用浮点数。