输入一个年份 输入一个月份

控制台输入
输入一个年份
输入一个月份
求:从1月到该月有多少天


public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入年份:");
        int year = sc.nextInt();
        System.out.println("请输入月份:");
        int month = sc.nextInt();
        int day = differentDaysByMillisecond(new Date() {{
            setYear(year);
            setMonth(0);
        }}, new Date() {{
            setYear(year);
            setMonth(month - 1);
        }});
        System.out.println("两个日期的差距:" + day);
    }

    public static int differentDaysByMillisecond(Date date1, Date date2) {
        return (int) ((date2.getTime() - date1.getTime()) / (1000 * 3600 * 24));
    }

运行效果
img


import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil;

import java.util.Date;
import java.util.Scanner;

/*
    <!-- maven项目导包 -->
    <dependency>
        <groupId>cn.hutool</groupId>
        <artifactId>hutool-all</artifactId>
        <version>5.6.6</version>
    </dependency>
 */
public class Test {

    public static void main(String[] args) {
        try{
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入第一个日期(格式:yyyy-MM-dd):");
            String dateStr1 = sc.next();
            Date date1 = DateUtil.parse(dateStr1);
            System.out.println("请输入第二个日期(格式:yyyy-MM-dd):");
            String dateStr2 = sc.next();
            Date date2 = DateUtil.parse(dateStr2);
            // 时间差
            long betweenDay = DateUtil.between(date1, date2, DateUnit.DAY);
            // 控制台输出
            System.out.println("相差天数:" + betweenDay);
        } catch (Exception e) {
            System.err.println("输入的时间格式不正确!");
        }
    }
}

img

getDayOfYear() : 获取一年中第几天

img

img