int[] weight={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2}; //十七位数字本体码权重
char[] checkCode={'1','0','X','9','8','7','6','5','4','3','2'}; //mod11,对应校验码字符值 x表10
public char getCheckCode(String idNo17){//14230219700101101
int sum = 0;
int mode = 0;
for(int i = 0; i < id17.length(); i++){
sum=sum+Integer.parseInt(String.valueOf(idNo17.charAt(i)))*weight[i];
}
mode = sum % 11;
return checkCode[mode];
}
倒数第二位偶女
15位的身份证出生年份采用年份后2位