I have a method that is being called to validate that an IP address is assignable. No matter what I pass to it, it is always returning true. What do I need to set the return as to get this method working properly? 
public boolean checkValidIPClass(String x) {
    for (int i = 0; i < 4; i++) {
        try {
            if (retString.equals("A")) {
                if ((intParts[1] == 0) && (intParts[2] == 0) && (intParts[3] == 0))
                    return false;
                if ((intParts[1] == 255) && (intParts[2] == 255) && (intParts[3] == 255))
                    return false;
            }
            if (retString.equals("B")) {
                if ((intParts[2] == 0) && (intParts[3] == 0))
                    return false;
                if ((intParts[2] == 255) && (intParts[3] == 255))
                    return false;
            }
            if (retString.equals("C")) {
                if (intParts[3] == 0)
                    return false;
                if (intParts[3] == 255)
                    return false;
            }
        } //ends try
        catch (NumberFormatException nfe) {
            return false;
        } //ends catch
    } //ends for
    return true;
}
retString is making it to the method and is a string that was returned from another method that checks what class the IP address is and assigns it, this was verified with a print statement. Thanks!
EDIT: How has this been answered and downvoted? My question wasn't about comparing the strings, it was about the method always returning true even when I know the if statements should be catching the error and returning false?
EDIT2: Updated my code.
 
     
    