숫자 확인 알고리즘은 Luhn Java에서

  //------------------------------------------------ --------- 
  유효한 신용 카드 번호 Luhn 알고리즘을 사용하기위한 / / 수표 
  //------------------------------------------------ --------- 

  공용 추상 클래스 LuhnCheck ( 

    //-------------------------------- 
    / / 필터가 아닌 - 자리 캐릭터 
    //-------------------------------- 

    (s 문자열 민간의 정적 문자열 getDigitsOnly) ( 
      StringBuffer digitsOnly = 새로운 StringBuffer (); 
      숯불 C; 
      (int 전 = 0;위한 난 <s.length (); 난 + +) ( 
        C = s.charAt은 (i); 
        만약 (Character.isDigit (C)) ( 
          digitsOnly.append (C); 
        ) 
      ) 
      반환 digitsOnly.toString (); 
    ) 

    //------------------- 
    / / 수행 Luhn 확인 
    //------------------- 

    공공 정적은 boolean isValid (문자열 cardNumber) ( 
      문자열 digitsOnly = getDigitsOnly (cardNumber); 
      int 합이 = 0; 
      자리 = 0 int; 
      int addend = 0; 
      부울 timesTwo = 거짓; 

      (int 전 = digitsOnly.length에 대한 () - 1; 난> = 0; 난 -) ( 
        자리 = Integer.parseInt ((난, 난 + digitsOnly.substring 1)); 
        (timesTwo) ( 
          addend = 자리 * 2; 
          (addend> 9) ( 
            addend -= 9; 
          ) 
        ) 
        다른 ( 
          addend = 자리; 
        ) 
        합이 + = addend; 
        timesTwo =! timesTwo; 
      ) 

      int 계수 = 액수 % 10; 
      반환 계수 == 0; 

    ) 

    //----- 
    / / 테스트 
    //----- 

    정적 무효 메인 (문자열 [] args) 공공 ( 
      문자열 cardNumber = "4408 0412 3456 7890"; 
      부울 유효 = LuhnCheck.isValid (cardNumber); 
      System.out.println (cardNumber + ":"+ 유효); 
      cardNumber = "4408 0412 3456 7893"; 
      = LuhnCheck.isValid (cardNumber 유효); 
      System.out.println (cardNumber + ":"+ 유효); 
      cardNumber = "4417 1234 5678 9112"; 
      = LuhnCheck.isValid (cardNumber 유효); 
      System.out.println (cardNumber + ":"+ 유효); 
      cardNumber = "4417 1234 5678 9113"; 
      = LuhnCheck.isValid (cardNumber 유효); 
      System.out.println (cardNumber + ":"+ 유효); 
    ) 

  ) 


상위 5 개 무료 네트워킹 툴

스크랩 the Luhn 체크 데이터 알고리즘 자바에

최신 블로그 게시물


영어 영어 독일어 독일어 스페인어 스페인어 프랑스어 프랑스어 이탈리아어 이탈리아어 포르투갈어 포르투갈어 러시아어 러시아어 네덜란드어 네덜란드어
그리스어 그리스어 힌디어 힌디어 일본어 일본어 한국어 한국어 중국어 중국어 중국어 (간체) 중국어 (간체) 아랍어 아랍어

저작권 2009년 테크 - 자주 묻는 질문. 판권 소유. 개인 정보 보호 정책.