code: public static int parseSignedInt(CharSequence s, final int start, final int end) throws NumberFormatException {
          if (s.charAt(start) == '-') {
              // negative!
              return -parseUnsignedInt(s, start + 1, end);
          } else {
              return  parseUnsignedInt(s, start, end);
          }
      }
docs: Parses out an int value from the provided string, equivalent to Integer.parseInt(s.substring(start, end)),
  but has significantly less overhead, no object creation and later garbage collection required.
  
  @throws {@link NumberFormatException} if it encounters any character that is not [-0-9].