java通过身份证前17位计算出身份证最后一位 加权因子

public static void main(String[] args) {
        //身份证号
        String id_num = "123";
        //权数数组
         int[] weightArray = {7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};//权数数组
         String vCode = "10X98765432";
       
        int s = 0 ;
        for (int i = 0; i < 17; i++) {
            s+=    Integer.parseInt(String.valueOf(id_num.charAt(i)))*weightArray[i];
        }
        System.out.println(vCode.charAt(s % 11)); 
        }

猜你喜欢

转载自blog.csdn.net/weixin_39592397/article/details/83412403