18.text--身份证信息查看

发布时间 2023-03-29 10:00:02作者: 小黑确实不黑

身份证信息查看

从给定的身份证中,获取指定位数 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();
}