class Solution { public int myAtoi(String str) { int ret = 0; int i = 0; boolean negative = false; String retString = ""; // Without using trim() // while(i<str.length() && str.charAt(i) == ' ') // i++; str = str.trim(); if (i >= str.length() || Character.isLetter(str.charAt(i))) return ret; if (str.charAt(i) == '-') { negative = true; i++; } else if (str.charAt(i) == '+') { i++; } while (i < str.length() && Character.isDigit(str.charAt(i))) { retString += str.charAt(i++); } if (retString != "") { try { ret = (negative ? -1 * Integer.parseInt(retString) : Integer.parseInt(retString)); } catch (Exception e) { ret = (negative ? Integer.MIN_VALUE : Integer.MAX_VALUE); } } return ret; } }
Categories