在Java中,输入身份证号可以获取出生日期和性别,具体实现如下:
/** * 根据身份证号获取出生日期和性别 * @param idCard 身份证号 * @return Map出生日期和性别 */ public static Map getInfoByIdCard(String idCard) { Map info = new HashMap<>(); String birth = ""; String gender = ""; if (idCard.length() == 15) { // 15位身份证号 birth = "19" + idCard.substring(6, 8) + "-" + idCard.substring(8, 10) + "-" + idCard.substring(10, 12); gender = Integer.parseInt(idCard.substring(14)) % 2 == 0 ? "女" : "男"; } else if (idCard.length() == 18) { // 18位身份证号 birth = idCard.substring(6, 10) + "-" + idCard.substring(10, 12) + "-" + idCard.substring(12, 14); gender = Integer.parseInt(idCard.substring(16, 17)) % 2 == 0 ? "女" : "男"; } info.put("birth", birth); info.put("gender", gender); return info; }
在调用此方法时,只需要传入身份证号即可:
Mapinfo = getInfoByIdCard("110101199001011234"); System.out.println("出生日期:" + info.get("birth")); System.out.println("性别:" + info.get("gender"));
运行结果如下:
出生日期:1990-01-01 性别:男
使用上述方法,我们可以方便地获取身份证号对应的出生日期和性别。