@@ -0,0 +1,1174 @@
+package leetcode.evaluate_reverse_polish_notation;%0A%0Aimport java.util.Arrays;%0Aimport java.util.HashSet;%0Aimport java.util.Set;%0Aimport java.util.Stack;%0A%0Apublic class Solution %7B%0A    public int evalRPN(String%5B%5D tokens) %7B%0A    %09Stack%3CString%3E stack = new Stack%3CString%3E();%0A    %09Set%3CString%3E operatorSet = new HashSet%3CString%3E(Arrays.asList(new String%5B%5D%7B%22+%22, %22-%22, %22*%22, %22/%22%7D));%0A    %09for(String token : tokens)%7B%0A    %09%09if(operatorSet.contains(token))%7B%0A    %09%09%09int operand2 = Integer.parseInt(stack.pop());%0A    %09%09%09int operand1 = Integer.parseInt(stack.pop());%0A    %09%09%09if(token.equals(%22+%22))%7B%0A    %09%09%09%09stack.push(Integer.toString(operand1 + operand2));%0A    %09%09%09%7Delse if(token.equals(%22-%22))%7B%0A    %09%09%09%09stack.push(Integer.toString(operand1 - operand2));%0A    %09%09%09%7Delse if(token.equals(%22*%22))%7B%0A    %09%09%09%09stack.push(Integer.toString(operand1 * operand2));%0A    %09%09%09%7Delse if(token.equals(%22/%22))%7B%0A    %09%09%09%09stack.push(Integer.toString(operand1 / operand2));%0A    %09%09%09%7D%0A    %09%09%7Delse%7B%0A    %09%09%09stack.push(token);%0A    %09%09%7D%0A    %09%7D%0A    %09return Integer.parseInt(stack.pop());%0A    %7D%0A    %0A    public static void main(String%5B%5D args)%7B%0A    %09System.err.println(new Solution().evalRPN(new String%5B%5D%7B%222%22, %221%22, %22+%22, %223%22, %22*%22%7D));%0A    %7D%0A%7D%0A

Add java solution for 150. Evaluate Reverse Polish Notation