1. 首页
  2. 软件开发
  3. JAVA
  4. 通过年月日判断年龄

通过年月日判断年龄

  • 发布于 2024-09-21
  • 0 次阅读

用if语句多分枝判断年龄

代码主体

import java.util.Scanner;

public class qiushijinianl {
    public static void main(String[] args) {
        //定义出生年月日,现在的年月日
        int s1, s2, s3, x1, x2, x3;
        System.out.println("输入你的生日年月日");
        //抓取命令,给变量赋值
        Scanner scanner = new Scanner(System.in);
        s1 = scanner.nextInt();
        s2 = scanner.nextInt();
        s3 = scanner.nextInt();
        System.out.println("输入现在时间年月日");
        x1 = scanner.nextInt();
        x2 = scanner.nextInt();
        x3 = scanner.nextInt();
        //当现在的年份小于生日的年份
        if (x1 < s1) {
            System.out.println("你还没出生");
        }
        //当生日年份等于现在年份
        else if (x1 == s1) {
            //年份相等的情况下再比较月份
            //现在月份大于生日月份
            if (x2 > s2) {
                System.out.println("你现在" + (x2 - s2) + "个月");
            }
            //年份相等的情况下再比较月份
            //现在月份等于生日月份
            else if (x2 == s2) {
                //年份相等的情况下再比较月份
                //现在月份等于生日月份
                //现在日子小于生日日子
                if (x3 < s3) {
                    System.out.println("你还没出生");
                    //年份相等的情况下再比较月份
                    //现在月份等于生日月份
                    //现在日子等于生日日子
                } else if (x3 == s3) {
                    System.out.println("你刚出生");
                    //年份相等的情况下再比较月份
                    //现在月份等于生日月份
                    //现在日子大于生日日子
                } else if (x3 > s3) {
                    System.out.println("你现在" + (x3 - s3) + "天");
                }
            }
            //年份相等的情况下再比较月份
            //现在月份小于生日月份
            else if (x2 < s2) {
                System.out.println("你还没出生");
            }
            //现在年份大于生日年份
        } else if (x1 > s1) {
            //现在年份大于生日年份
            //现在月份大于生日月份
            if (x2 > s2) {
                System.out.println("你现在" + (x1 - s1) + "岁");
                //现在年份大于生日年份
                //现在月份等于于生日月份
            } else if (x2 == s2) {
                //现在年份大于生日年份
                //现在月份等于于生日月份
                //现在日子大于等于生日日子,说明生日已过
                if (x3 >= s3) {
                    System.out.println("你现在" + (x1 - s1) + "岁");
                //说明生日还没过,所以要给年龄减一
                } else {
                    System.out.println("你现在" + (x1 - s1 - 1) + "岁");
                }
                //现在年份大于生日年份
                //现在月份小于于生日月份
            } else if (x2 < s2) {
                System.out.println("你现在" + (x1 - s1 - 1) + "岁");
            }
        }
    }
}

执行结果

注意 :

应考虑现实全部情况

注意代码的美观避免代码之间嵌套错误



原文链接: https://blog.csdn.net/daibadetianshi/article/details/136437676