当先锋百科网

首页 1 2 3 4 5 6 7

在Java中,输入身份证号可以获取出生日期和性别,具体实现如下:

/**
* 根据身份证号获取出生日期和性别
* @param idCard 身份证号
* @return Map出生日期和性别
*/
public static MapgetInfoByIdCard(String idCard) {
Mapinfo = 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
性别:男

使用上述方法,我们可以方便地获取身份证号对应的出生日期和性别。