Well, you can either A) determine it's a number, then parse it, or B) try to parse, and handle it gracefully if it fails. Since you're summing things, I'm assuming they SHOULD be a number, and so let's go with B.
Something as simple as this would work in your case:
int badArgs = 0;
for(int i = 0; i < args.length; i++) {
try {
int value = Integer.parseInt(args[i]);
// Do your main logic with value here
} catch (NumberFormatException e) {
ignored[badArgs++] = args[i];
}
Current problems with your code: checking .isDigit as you are makes no sense - it's meant to check a character from a string - you've already parsed it at that point, so if it's going to throw a NumberFormatException, it will have already, before you finish the check. Second: checking if it's a digit doesn't make sense anyhow, as -1 is a valid number, but would obviously fail whatever check you had in mind - and the rest of your code shows you intend to handle negaties.