身份证的有两个功能:
一是区别性别:奇数表示男性,偶数表示女性。
二是区别同地同名同性别同年同月同日出生人群。1、3、5、7、9分别表示同地同年同月同日出生的同名的男性;2、4、6、8分别表示同地同年同月同日出生的同名的女性。
(1)前1、2位数字表示:所在省份的代码;
(2)第3、4位数字表示:所在城市的代码;
(3)第5、6位数字表示:所在区县的代码;
(4)第7~14位数字表示:出生年、月、日;
(5)第15、16位数字表示:所在地的派出所的代码;
(7)第18位数字是校检码:也有的说是个人信息码,用来检验身份证的正确性。校检码可以是0~9的数字,有时也用x表示(尾号是10,那么就得用X来代替)。 一般是随计算机的随机产生。
一是区别性别:奇数表示男性,偶数表示女性。
二是区别同地同名同性别同年同月同日出生人群。1、3、5、7、9分别表示同地同年同月同日出生的同名的男性;2、4、6、8分别表示同地同年同月同日出生的同名的女性。
(1)前1、2位数字表示:所在省份的代码;
(2)第3、4位数字表示:所在城市的代码;
(3)第5、6位数字表示:所在区县的代码;
(4)第7~14位数字表示:出生年、月、日;
(5)第15、16位数字表示:所在地的派出所的代码;
(7)第18位数字是校检码:也有的说是个人信息码,用来检验身份证的正确性。校检码可以是0~9的数字,有时也用x表示(尾号是10,那么就得用X来代替)。 一般是随计算机的随机产生。
判断用户性别java代码示例:
public String execute(String value)
{
value = value.trim();
if (value == null || (value.length() != 15 && value.length() != 18))
{
return "";
}
if (value.length() == 15 || value.length() == 18)
{
String lastValue = value.substring(value.length() - 1, value.length());
int sex;
if (lastValue.trim().toLowerCase().equals("x")||lastValue.trim().toLowerCase().equals("e"))
{
return "男";
}else{
sex = Integer.parseInt(lastValue) % 2;
return sex == 0 ? "女" : "男";
}
}else{
return "";
}
}