public static boolean validate18Idcard(String idcard){
if(idcard == null ) {
return false;
}
if(idcard.length()!=18) {
return false;
}
char [] id =idcard.toCharArray();
int i, sum, n;
for (sum = i = 0; i < 17; i++){
sum += ((1 << (17 - i)) % 11) * (id[i] - '0');
}
n = (12 - (sum % 11)) % 11;
if (n < 10) {
return (n == id[17] - '0');
} else {
return (id[17] == 'X');
}
}
中国居民18位身份证号验证方法,Java算法实现
Posted 逃离沙漠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了中国居民18位身份证号验证方法,Java算法实现相关的知识,希望对你有一定的参考价值。
以上是关于中国居民18位身份证号验证方法,Java算法实现的主要内容,如果未能解决你的问题,请参考以下文章