前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java 验证身份证号码是否正确

Java 验证身份证号码是否正确

原创
作者头像
IT小马哥
修改2020-06-18 10:13:54
2.8K0
修改2020-06-18 10:13:54
举报
文章被收录于专栏:Java TaleJava Tale
 /**
 * 
 * @ClassName TestId
 * @author 作者:XiaoMage
 * @version 0.1
 * @Description :
 *          验证身份证号码是否正确!
 */
public class TestId {

    /**
     * @param args String
     */
    public static void main(String[] args) {
        String str ="230231199011024913";
        System.out.println(getValidIdCard(str));

    }
    private static boolean getValidIdCard(String cardid){
        String ls_id = cardid;
        if(ls_id.length() != 18)
        {
            return false;
        }
        char[] l_id = ls_id.toCharArray();
        int l_jyw = 0;
        int[] wi = new int[]{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1};
        char[] ai= new char[]{'1','0','X','9','8','7','6','5','4','3','2'};
        for(int i =0 ; i < 17; i++)
        {
            if(l_id[i] < '0' || l_id[i] > '9')
            {
                return false;
            }
            l_jyw += (l_id[i] -'0')*wi[i];
        }
        l_jyw = l_jyw % 11;
        if(ai[l_jyw] != l_id[17])
        {
            return false;
        }
        return true;
    }
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档