根据身份证的算法 验证身份证是否是正确的身份证号

 举个栗: 输入正确的身份证号,随便改变一位数字或者字母(最后一位可能为x) 返回false

 注   意:  如果输入的身份号最后一位为x 一定要大写不然永远是false

public class IDCardValidate {public static boolean validate(String no) {// 对身份证号进行长度等简单判断if (no == null || no.length() != 18 || !no.matches("\\d{17}[0-9X]")) {return false;}// 1-17位相乘因子数组int[] factor = {7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2};// 18位随机码数组char[] random = "10X98765432".toCharArray();// 计算1-17位与相应因子乘积之和int total = 0;for (int i = 0; i < 17; i++) {total += Character.getNumericValue(no.charAt(i)) * factor[i];}// 判断随机码是否相等return random[total % 11] == no.charAt(17);}
}

验证身份证号是否正确相关推荐

  1. js正则验证身份证号是否正确

    微信小程序开发交流qq群   173683895    承接微信小程序开发.扫码加微信. 封装js公共方法 //验证身份证格式 const IdentityCodeValid = sId => ...

  2. 验证身份证号是否正确,计算身份证号最后一位

    判断前17位算出的最后一位和用户输入的最后一位来判断身份证号码是否有效(随便乱输蒙对的概率比较小)验证身份证格式的正则 /^\d{6}((?:19|20)((?:\d{2}(?:0[13578]|1[ ...

  3. js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr)...

    js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr) 一.总结 1.|符号的使用:var reg=/^\d ...

  4. 用python判断身份证号性别_验证身份证号的Python脚本

    引用 a[0], a[1], a[2], a[3], ..., a[16], a[17] 其中a[i]表示第i位数字,i=0,1,2,...,17,如果最后一位(校验位)是X,则a[17]=10 每一 ...

  5. 【SQLServer】验证身份证号第18位校验码是否合法

    目录 1.业务场景 2.知识前提 3.实现方案 4.测试 5.参考链接 1.业务场景 参考国家标准GB 11643-1999,居民身份证号组成:6位数字地址码+8位数字出生日期码+3位数字顺序码+1位 ...

  6. 验证身份证号 格式问题

    导入的时候 验证身份证号的格式问题 if(!sfzh.equals("")&&isIDNumber(sfzh) == false){returnMap.put(&q ...

  7. EXCEL规范数据输入教程-验证身份证号

    EXCEL日常工作中经常会输入身份证号码,一不小心就可能出错,今天大飞老师就分享这样一个示例EXCEL规范数据输入教程-验证身份证号. 我们首先要保证在EXCEL中能正确输入身份证号码(PS:身份证号 ...

  8. Java验证身份证号是否合法

    身份证作为居民的唯一标识.在很多系统中需要用户输入身份证号信息,今天我们就来编写一个方法验证身份证号的合法性. 首先我们来看看身份证号的编码规则: 前1-2位数字表示:所在省(直辖市.自治区)的代码: ...

  9. 如何用正则表达式验证身份证号

    身份证号组成: ·17位数字 + 1位校验码 ·地址码:前六位 ·出生日期码:第七位至第十位 ·顺序码:第十五位至十七位(对同年同月同日生的人便定的顺序号,顺序号奇数为男生,偶数为女生) ·检验码:第 ...

最新文章

  1. async function_Electron IPC 通信如何使用 async/await 调用?
  2. 中检测到有潜在危险的 request.form 值。_洛宁县钢结构厂房加固检测设计中心
  3. 前端学习(1739):前端调试值之页面元素的调试技巧
  4. JavaScript的函数声明与函数表达式的区别
  5. 通过系统进程查找sql语句
  6. java持续集成soapui_接口自动化测试持续集成--Soapui接口功能测试参数化
  7. cuda Synchronization Functions
  8. [洛谷P5340][TJOI2019]大中锋的游乐场
  9. 碳酸铈行业调研报告 - 市场现状分析与发展前景预测
  10. python+flask搭建CNN在线识别手写中文网站
  11. Handlebars 和 angularjs 之间的区别
  12. HTK---语音识别实现应用的Kit
  13. paip.提升用户体验-------在C++ Builder 中为Form窗体添加背景图片
  14. MySql中varchar(10)和varchar(100)的区别==以及char的利弊
  15. android 连接魅族调试,魅族 PRO6 开启USB调试模式
  16. 天下手游一直显示连接服务器,《天下手游》4月11日合服公告
  17. 解决onenote 错误 0xE000078D
  18. 云适配牵手中建信息 征战企业级市场信心十足
  19. 血亏五六千,微信红包封面翻车实录
  20. 【应用多元统计分析】——第三章(1)

热门文章

  1. 【UOJ529】【美团杯2020】114514
  2. PPT、Word、Excel模板免费下载
  3. 面试题:SQL语句的执行顺序
  4. python打印金字塔_python 打印字母阶梯和金字塔
  5. linux用户可以分为,【简答题】Linux 中用户可分为哪几种类型,有何特点 ? (1.0分)...
  6. 大专找不到计算机工作吗,大专毕业就没工作?
  7. China-open-ssl编译的一些记录
  8. python股票交易接口_tushare开源股票交易接口基于python实现技术
  9. iPhone版《植物大战僵尸》9天赚百万美元
  10. 中职计算机网络专业建设理论与思路,关于中职计算机网络专业建设的调研与思考.doc...