如何获取今天的日期和当月最后一个日期之间的天数?

Tic*_*ker -4 java android calendar date

所以我正在制作一个 Android 应用程序,我需要计算当前日期和当月最后一个日期之间的天数。

假设今天是 1/11/2017,当月的最后一个日期是 30/11/2017。所以天数是 30。因为 30 天后下个月就要开始了。

sol*_*for 6

    Calendar calendar = Calendar.getInstance();
    int lastDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
    int currentDay = calendar.get(Calendar.DAY_OF_MONTH);
    int daysLeft = lastDay - currentDay;


    System.out.println("Last Day: " + lastDay);
    System.out.println("Current Day : " + currentDay);
    System.out.println("There are " + daysLeft + " days left in the month.");
Run Code Online (Sandbox Code Playgroud)

输出

Last Day: 30
Current Day : 1
There are 29 days left in the month.
Run Code Online (Sandbox Code Playgroud)

  • 这个答案使用了麻烦的旧日期时间类,这些类现在已经被遗留下来,被 java.time 类取代。对于 Android,请参阅 ThreeTen-Backport 和 ThreeTenABP 项目。 (2认同)