2012-01-17 28 views

cevap

11

Sen

// ------------------- 
// Perform Luhn check 
// ------------------- 

public static boolean isCreditCardValid(String cardNumber) { 
    String digitsOnly = getDigitsOnly(cardNumber); 
    int sum = 0; 
    int digit = 0; 
    int addend = 0; 
    boolean timesTwo = false; 

    for (int i = digitsOnly.length() - 1; i >= 0; i--) { 
     digit = Integer.parseInt(digitsOnly.substring(i, i + 1)); 
     if (timesTwo) { 
      addend = digit * 2; 
      if (addend > 9) { 
       addend -= 9; 
      } 
     } else { 
      addend = digit; 
     } 
     sum += addend; 
     timesTwo = !timesTwo; 
    } 

    int modulus = sum % 10; 
    return modulus == 0; 

} 
+0

i yardım – rfsk2010

+2

oldu sevindim ki ayrıca, http://onesandzeros.biz/notebook/ccvalidation.php#Source gelmiş gibi görünüyor kredi kartı numarası doğrulamak için aşağıdaki yöntemi kullanabilirsiniz getDigitsOnly() yöntemini tanımlar. – spork

İlgili konular