El Algoritmo Luhn Dígito de Control en Java

  //------------------------------------------------ --------- 
  / / El control de número de la tarjeta de crédito válida Luhn utilizando el algoritmo 
  //------------------------------------------------ --------- 

  público clase abstracta LuhnCheck ( 

    //-------------------------------- 
    / / Filtrar caracteres no dígitos 
    //-------------------------------- 

    privado de cuerda estática getDigitsOnly (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); 
        ) 
      ) 
      volver digitsOnly.toString (); 
    ) 

    //------------------- 
    / / Realizar la verificación Luhn 
    //------------------- 

    public static boolean isValid (String cardNumber) ( 
      DigitsOnly cadena = getDigitsOnly (cardNumber); 
      int suma = 0; 
      int dígitos = 0; 
      int addend = 0; 
      boolean timesTwo = false; 

      for (int i = digitsOnly.length () - 1; i> = 0; i -) ( 
        dígito = Integer.parseInt (digitsOnly.substring (i, i + 1)); 
        if (timesTwo) ( 
          addend dígitos * = 2; 
          if (addend> 9) ( 
            addend -= 9; 
          ) 
        ) 
        else ( 
          addend = dígitos; 
        ) 
        suma + = addend; 
        timesTwo =! timesTwo; 
      ) 

      int módulo = suma% 10; 
      módulo de retorno == 0; 

    ) 

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

    public static void main (String [] args) ( 
      CardNumber cadena = "4408 0412 3456 7890"; 
      booleano válido LuhnCheck.isValid = (cardNumber); 
      System.out.println (cardNumber + ":" + válidos); 
     cardNumber = "4408 0412 3456 7893"; 
      válido = LuhnCheck.isValid (cardNumber); 
      System.out.println (cardNumber + ":" + válidos); 
      cardNumber = "4417 1234 5678 9112"; 
      válido = LuhnCheck.isValid (cardNumber); 
      System.out.println (cardNumber + ":" + válidos); 
      cardNumber = "4417 1234 5678 9113"; 
      válido = LuhnCheck.isValid (cardNumber); 
      System.out.println (cardNumber + ":" + válidos); 
    ) 

  ) 


Comienzo de la página 5 Libre Herramientas de Red

Guardar los datos Luhn Compruebe Algoritmo en Java

Latest Blog Posts


Inglés Inglés Alemán Alemán Español Español Francés Francés Italiano Italiano Portugués Portugués Ruso Ruso Neerlandés Neerlandés
Griego Griego Hindi Hindi Japonés Japonés Coreano Coreano Chino Chino Chino (simplificado) Chino (simplificado) Árabe Árabe

Derecho de Autor 2009 Tech-FAQ. Todos los derechos reservados. Política de Privacidad.