有一身份证号,判断此为男还是女,基于此方法,写一个算法,判断此身份证号为男还是女, 身份证的倒数第2位若为偶数是女,反之为男。(身份证分15位和18位)

复制代码
import java.util.*;

public class p_19_3 {
    public static void main(String[] args) {
        Scanner reader = new Scanner(System.in);
        System.out.println("请输入您的身份证号: ");
        // 正则表达式
        String IDcard = reader.next();
        String SZ = IDcard.substring(IDcard.length() - 2);// 后二

        String sz = SZ.substring(0, 1);// 后二前一
        try {
            int n1 = Integer.parseInt(sz);// 后二前一转整
            if (IDcard.length() != 18 && IDcard.length() != 15) {
                // 位数
                System.out.println("身份证输入错误,请认真核对您的身份证号111!");
            } else if (n1 % 2 != 0) {
                // 判断奇偶
                System.out.println("根据身份证信息判断,您的性别为男");
            } else {
                System.out.println("根据身份证信息判断,您的性别为女");
            }
        }
        // 出现输入异常
        catch (Exception e) {
            System.out.println("身份证输入错误,请认真核对您的身份证号222!");
        }

    }
}
复制代码

 

posted @   飞鱼Dai  阅读(327)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示