public String CalculateReversePolishExpression(String subStr) {
		List<String> suffix = createReversePolishExpression(subStr);
		Stack<Double> stack = new Stack<Double>();
		for (int i = 0; i < suffix.size(); i++) {
			if (!isOperatorType(suffix.get(i))) {
				stack.push(Double.valueOf(suffix.get(i)));
			} else if (isOneOperatorType(suffix.get(i))) {
				Double current = stack.pop();
				Double result = calculate(suffix.get(i), current);
				stack.push(result);
			} else {
				Double current = stack.pop();
				Double previous = null;
				if (stack.count != 0) {
					previous = stack.pop();
				} else {
					previous = new Double(0);
				}
				Double result = calculate(suffix.get(i), previous, current);
				stack.push(result);
			}
		}
		return stack.peek().toString();
	}