public static void main(String[] args) {
String birthString="01-03";
String now="2011-12-20";
int recentDays=15;
try{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date date=sdf.parse(now);
if(compare(date,birthString,recentDays)){
System.out.println(recentDays+"日内过生日");
}else{
System.out.println(recentDays+"日内不会过生日");
}
}catch(Exception e){e.printStackTrace();}
}
/**
* 要计算今年和明年两年的生日是否符合条件
* @param date
* @param birthady
* @param days
* @return flag 近期过生日返回true,否则返回false
*/
public static boolean compare(Date date,String birthString,int days){
boolean flag=false;
try{
SimpleDateFormat sdf=new SimpleDateFormat("yyyyMM-dd");
Date birthday=sdf.parse(date.getYear()+1900+birthString);
Date nextBirthday=sdf.parse(date.getYear()+1901+birthString);
System.out.println("今日:"+date.toLocaleString());
System.out.println("今年生日:"+birthday.toLocaleString());
System.out.println("明年生日:"+nextBirthday.toLocaleString());
Date end=DateUtil.addDate(date, days);//计算今天days之后的日期
if((birthday.after(date)&&birthday.before(end))||nextBirthday.before(end)){//nextBirthday年比当前年大,所以肯定要晚于now
flag=true;
}
}catch(Exception e){e.printStackTrace();}
return flag;
}
调用的另外一个工具类的时间添加方法
/**
* 日期相加
* @param date 日期
* @param day 天数
* @return 返回相加后的日期
*/
public static java.util.Date addDate(java.util.Date date, int day) {
java.util.Calendar c = java.util.Calendar.getInstance();
c.setTimeInMillis(getMillis(date) + ((long) day) * 24 * 3600 * 1000);
return c.getTime();
}
分享到:
相关推荐
12.根据身份证得到生日函数 23 13.根据身份证计算性别函数 24 14.将身份证的15位号码升级为18位 25 15.通过身份证获得户籍 27 16.多个数据项的字符串取指定位置字符 28 17.中缀算术转后缀算术表达式并计算的函数 29 ...
函数作用:判断是否连接在线.........................54 '28.函数作用:币种转换.................................54 '29.函数作用:检验工作表是否有可打印内容...............55 '30.函数作用:查找一字符串...
本书侧重于函数的实战应用,共分12章,前10章分别介绍了数学函数、统计函数、日期和时间函数、文本函数、逻辑函数、查找和引用函数、财务函数、信息函数以及数据库和三角函数在实战中的应用;第11 章介绍了函数与...
在主程序中,我们首先获取当前时间,然后判断是否已经是生日。如果是生日,就获取用户输入的名字,并调用birthday_wish函数输出祝福语;如果不是生日,就输出一条等待提示。 当然,我们可以继续扩展这个代码,让它...
php 提取身份证号码中的生日日期以及确定是否成年的一个函数。可以同时确定15位和18位的身份证,经本人亲测,非常好用,分享函数代码如下: <?php //用php从身份证中提取生日,包括位和位身份证 function ...
20.一个能计算是否有重复单元的函数 21.数字金额转中文大写 22.将数字转成英文 23.人民币大小写转换 24.获取区域颜色值 25.获取活动工作表名 26.获取最后一行行数 27.判断是否连接在线 28.币种转换 29.检验工作表...
函数功能与参数:判断指定区域中是否有重复单元格的函数只有一个参数即为引用,结果为True时表示有重复,否则无重复。 函数名称:File 函数功能与参数:用于创建带链接的文件目录,有三个参数,包括路径、文件名...
4、导出函数:void load(int b) 首先判断fopen"只读"打开"d://bbb.txt"是否成功,若其返回值不为零,继续下面操 作。用for循环通过fscanf语句将文件中的朋友资料取出放到em结构数组里面。形参b指 需要导出的朋友。...
0139 使用FileExists函数判断指定文件是否存在 90 0140 使用FileGetAttr函数返回文件的属性 90 0141 使用FileGetDate函数返回文件的修改日期 90 0142 使用FileWrite函数将缓冲区中的内容写入文件 91 4.10 ...
第一参数为引用,第二参数输入“DQ”取返回地区,输入“XB”则返回性别,输入“SR”则返回生日。忽略第二参数则默认显示地区。 函数名称:大写 函数功能与参数:将阿拉伯数字转为人民币金额大写。仅需要一个参数,...
0139 使用FileExists函数判断指定文件是否存在 90 0140 使用FileGetAttr函数返回文件的属性 90 0141 使用FileGetDate函数返回文件的修改日期 90 0142 使用FileWrite函数将缓冲区中的内容写入文件 91 4.10 ...
第一参数为引用,第二参数输入“DQ”取返回地区,输入“XB”则返回性别,输入“SR”则返回生日。忽略第二参数则默认显示地区。 函数名称:大写 函数功能与参数:将阿拉伯数字转为人民币金额大写。仅需要一个参数,...
• 利用MID 函数提取身份证号码中的8 位生日数字 • 使用文本提取函数进行数字分列 • 使用查找函数拆分空格分隔的数据 • 实现EAN-13条码的校验位的算法 • 利用文本查找函数进行模糊查找 • 利用SEARCHB 函数分离...
函数功能与参数:判断指定区域中是否有重复单元格的函数只有一个参数即为引用,结果为True时表示有重复,否则无重复。 函数名称:File 函数功能与参数:用于创建带链接的文件目录,有三个参数,包括路径、文件名...
C语言程序设计实践题目要求 2017级通信工程3班 总体要求: (1)每位同学的输出界面要有带有自姓名、学号、班级、完成时间(年月日...(4)、可以实现,任意输入一个日期,判断当前日起是否为重要日期,并显示该日期的信息。
这份代码很适合Python小白初学者练手用,几十行代码就可以轻松实现星座判断程序。 学Python很轻松,感兴趣的小伙伴们可以关注布丁_码上成功。 Python是最容易上手,让人学了最有成就感的编程语言,你值得学习! "请...
这份代码很适合Python小白初学者练手用,几十行代码就可以轻松实现属相判断程序。 学Python很轻松,感兴趣的小伙伴们可以关注布丁_码上成功。 Python是最容易上手,让人学了最有成就感的编程语言,你值得学习! "请...
java面试题1逻辑题,很多都是给出几个数,然后找规律添空缺的数 2简答,什么是javabean;(2)编程题,用递归方法实现什么功能 (3)数据库,基本的sql语句 ,Jdo是什么?...3 1+2+3+4+...+100做成函数