+ (BOOL)checkCreditCardNumber:(NSString *)cardNum { NSAssert(cardNum && cardNum != @"" , @"checkCreditCardNumber: cardNum is nil."); NSInteger len = [cardNum length]; NSInteger sumNumOdd = 0; NSInteger sumNumEven = 0; BOOL isOdd = YES; for (NSInteger i = len - 1; i >= 0; i--) { NSInteger num = [cardNum substringWithRange:NSMakeRange(i, 1)].integerValue; if (isOdd) {//奇数位 sumNumOdd += num; }else{//偶数位 num = num * 2; if (num > 9) { num = num - 9; } sumNumEven += num; } isOdd = !isOdd; } return ((sumNumOdd + sumNumEven) % 10 == 0); } //objectc/7096