1 package leetcode; 2 3 import java.util.Stack; 4 5 public class RPN { 6 public static int evalRPN(String[] tokens) { 7 Stack stack=new Stack(); 8 for(int i=0;i<tokens.length;i++){ 9 if(tokens[i]=="+"){10 int a=Integer.parseInt((String)stack.pop());11 int b=Integer.parseInt((String)stack.pop());12 stack.push(a+b); 13 }else if(tokens[i]=="-"){14 int a=Integer.parseInt((String)stack.pop());15 int b=Integer.parseInt((String)stack.pop());16 stack.push(a-b); 17 }else if(tokens[i]=="*"){18 int a=Integer.parseInt((String)stack.pop());19 int b=Integer.parseInt((String)stack.pop());20 stack.push(a*b); 21 }else if(tokens[i]=="/"){22 int a=Integer.parseInt((String)stack.pop());23 int b=Integer.parseInt((String)stack.pop());24 if(b==0){25 return 0;26 27 }else{28 stack.push(a/b); 29 }30 31 }else{32 stack.push(tokens[i]);33 }34 35 }36 int result=(int)stack.peek();37 return result;38 }39 public static void main(String[] args){40 String[] tokens={"0","3","/"};41 42 System.out.println(evalRPN(tokens));43 }44 }