场景应用:Java 写一个根据生日日期计算距离生日还有多少天的工具类?

Posted 流楚丶格念

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了场景应用:Java 写一个根据生日日期计算距离生日还有多少天的工具类?相关的知识,希望对你有一定的参考价值。

Java 写一个根据生日日期计算距离生日还有多少天的工具类?

package com.yyl.algorithm.tools;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;

public class DateTool 
    /**
     *  计算距离生日还有多少天
     * @param addtime:生日日期
     */
    public static int getBirthDay(String addtime) 
        int days = 0;
        try 
            SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-MM-dd");
            String clidate = addtime;
            Calendar cToday = Calendar.getInstance(); // 存今天
            Calendar cBirth = Calendar.getInstance(); // 存生日
            cBirth.setTime(myFormatter.parse(clidate)); // 设置生日
            cBirth.set(Calendar.YEAR, cToday.get(Calendar.YEAR)); // 修改为本年
            if (cBirth.get(Calendar.DAY_OF_YEAR) < cToday.get(Calendar.DAY_OF_YEAR)) 
                // 生日已经过了,要算明年的了
                days = cToday.getActualMaximum(Calendar.DAY_OF_YEAR) - cToday.get(Calendar.DAY_OF_YEAR);
                days += cBirth.get(Calendar.DAY_OF_YEAR);
             else 
                // 生日还没过
                days = cBirth.get(Calendar.DAY_OF_YEAR) - cToday.get(Calendar.DAY_OF_YEAR);
            
         catch (ParseException e) 
            e.printStackTrace();
        
        return days;
    

    public static void main(String[] args) 
        System.out.println(getBirthDay("2016-12-23"));
    


以上是关于场景应用:Java 写一个根据生日日期计算距离生日还有多少天的工具类?的主要内容,如果未能解决你的问题,请参考以下文章

用java写用户在控制台按照“yyyy/mm/dd”的格式输入出生日期,请计算用户的年龄

mysql 年龄计算(根据生日字段)

java编程打印大学四年的生日都是星期几?

根据生日自动计算年龄

js 日期计算星座 根据生日的月份和日期,一行代码计算星座的js小函数(转)

以及距他下一次生日的天数。是C语言,不是C++