本文主要是介绍java 判断是否信用卡_验证信用卡卡号是否有效 Luhn算法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
[java]代码库public class Luhn {
public static void main(String[] args) {
System.out.println(luhnTest("49927398716"));
System.out.println(luhnTest("49927398717"));
System.out.println(luhnTest("1234567812345678"));
System.out.println(luhnTest("1234567812345670"));
}
public static boolean luhnTest(String number){
int s1 = 0, s2 = 0;
String reverse = new StringBuffer(number).reverse().toString();
for(int i = 0 ;i < reverse.length();i++){
int digit = Character.digit(reverse.charAt(i), 10);
if(i % 2 == 0){//this is for odd digits, they are 1-indexed in the algorithm
s1 += digit;
}else{//add 2 * digit for 0-4, add 2 * digit - 9 for 5-9
s2 += 2 * digit;
if(digit >= 5){
s2 -= 9;
}
}
}
return (s1 + s2) % 10 == 0;
}
}
//源代码片段来自云代码http://yuncode.net
这篇关于java 判断是否信用卡_验证信用卡卡号是否有效 Luhn算法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!