2017-03-09 327 views

回答

0

您可以使用下面的代碼來提取數字。

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())); 
    } 
0

與Sanjeet,不同的工具相同的方法。

List<Integer> numbers = new ArrayList<>(); 
String expression = "9/8*9+3"; 
for (String number : expression.split("[\\+-/\\*]")) { 
    numbers.add(Integer.parseInt(number)); 
} 

編輯

知道,有限制的分割方法。這兩個(Sajeets和我的)不會允許負數(負號將被剝離)。我們也都是整數。不過,我的方法可以改爲使用浮點數。