Il Luhn Check Digit Algorithm in Java

  //------------------------------------------------ --------- 
  / / Controlli per il numero di carta di credito valida Luhn utilizzando l'algoritmo 
  //------------------------------------------------ --------- 

  public abstract class LuhnCheck ( 

    //-------------------------------- 
    / / Filtra cifre caratteri non - 
    //-------------------------------- 

    private String getDigitsOnly statica (String s) ( 
      StringBuffer digitsOnly = new StringBuffer (); 
      char c; 
      for (int i = 0; i <s.length (); i + +) ( 
        c = s.charAt (i); 
        if (Character.isDigit (c)) ( 
          digitsOnly.append (c); 
        ) 
      ) 
      ritorno digitsOnly.toString (); 
    ) 

    //------------------- 
    / / Eseguire Luhn verificare 
    //------------------- 

    public static boolean isValid (String carta) ( 
      Stringa digitsOnly = getDigitsOnly (carta); 
      int somma = 0; 
      int cifra = 0; 
      int addend = 0; 
      boolean timesTwo = false; 

      for (int i = digitsOnly.length () - 1; i> = 0; i -) ( 
        cifre = Integer.parseInt (digitsOnly.substring (i, i + 1)); 
        if (timesTwo) ( 
          addend cifre * = 2; 
          if (addend> 9) ( 
            addend -= 9; 
          ) 
        ) 
        else ( 
          addend = cifra; 
        ) 
        somma + = addend; 
        timesTwo =! timesTwo; 
      ) 

      int somma modulo = 10%; 
      ritorno modulo == 0; 

    ) 

    //----- 
    / / Test 
    //----- 

    public static void main (String [] args) ( 
      Carta Stringa = "4408 0412 3456 7890"; 
      boolean valido = LuhnCheck.isValid (carta); 
      System.out.println (carta + ":" + valida); 
      carta = "4408 0412 3456 7893"; 
      = LuhnCheck.isValid valido (carta); 
      System.out.println (carta + ":" + valida); 
      carta = "4417 1234 5678 9112"; 
      = LuhnCheck.isValid valido (carta); 
      System.out.println (carta + ":" + valida); 
      carta = "4417 1234 5678 9113"; 
      = LuhnCheck.isValid valido (carta); 
      System.out.println (carta + ":" + valida); 
    ) 

  ) 


Top 5 Free Networking Tools

Memorizza i dati Algoritmo Luhn Check in Java

Ultimi post sul blog


Inglese Inglese Tedesco Tedesco Spagnolo Spagnolo Francese Francese Italiano Italiano Portoghese Portoghese Russo Russo Olandese Olandese
Greco Greco Hindi Hindi Giapponese Giapponese Coreano Coreano Cinese Cinese Cinese (semplificato) Cinese (semplificato) Arabo Arabo

Copyright 2009 Tech-FAQ. Tutti i diritti riservati. Privacy Policy.