18.text--身份证信息查看
身份证信息查看
从给定的身份证中,获取指定位数 7-14位 出生年月日、17位 性别
示例:450111197205054878
输出:人物信息为:
出生年月日:年月日
性别为:男/女
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("请输入身份证:");
String id = "";
//键盘输入身份证,并限制规范条件
while (true) {
id = s.next();
if(id.length() == 18){
break;
}else{
System.out.println("身份证号码输入有误!请重新输入:");
}
}
//获取性别位数
char gender = id.charAt(16);
//截取出生年月日位数
String year = id.substring(6,10);
String month = id.substring(10,12);
String day = id.substring(12,14);
//拼接成完整格式
String yearMonthDay = year + "年" + month + "月" + day +"日";
System.out.println("出生年月日:" + yearMonthDay);
//利用ASCII码表进行转换,'0'-->48,'1'-->49,以此类推
int sex = gender - 48;
if(sex % 2 == 0){
//偶数是女
System.out.println("性别为:女");
}else{
//奇数是男
System.out.println("性别为:男");
}
s.close();
}