classSolution{publicintevalRPN(String[] tokens){int n = tokens.length;
Stack<Integer> stack =newStack();for(int i =0; i < n; i ++){//判断是否是数字,即判断该String最后一位是不是数字即可if(Character.isDigit(tokens[i].charAt(tokens[i].length()-1))){
stack.push(Integer.valueOf(tokens[i]));}else{int result =0;int r = stack.pop();int l = stack.pop();switch(tokens[i].charAt(0)){case'+':
result = r + l;break;case'-':
result = l - r;break;case'*':
result = r * l;break;case'/':
result = l / r;break;}
stack.push(result);}}return stack.peek();}}
问题解题提示已经给的很明显了用栈。。。class Solution { public int evalRPN(String[] tokens) { int n = tokens.length; Stack<Integer> stack = new Stack(); for(int i = 0; i < n; i ++){ //判断是否是数字,即判断该String最后一位是不是数字即可