项目须要,获取当天之后的30天。并提示星期几(周几),写了一个工具类

/**
* 计算日期时间
* @author shijing
* 2015年8月10日下午2:16:09
* @param date 传入的须要计算的日期
* @param timeWay 计算方式(年、月、周、日)
* @param num 加减的数量,可传入负数变减法(XXX之后)
* @return
*/
public static Date calculateDate(Date date ,int timeWay ,int num){
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(timeWay, num);
return cal.getTime();
} /**
* 格式化计算好的日期,返回格式:yyyy-MM-dd
* @author shijing
* 2015年8月10日下午2:20:22
* @param date 传入的须要计算的日期
* @param timeWay 计算方式(年、月、周、日)
* @param num 加减的数量,可传入负数变减法(XXX之后)
* @return
*/
public static String calculateDateToString(Date date ,int timeWay ,int num){
return dateToString(calculateDate(date, timeWay, num), DATE_FORMAT_3);
} /**
* 获取指定日期是星期几
* @author shijing
* 2015年8月10日下午2:44:44
* @param date 指定日期
* @return
*/
public static String getWeekOfDate(Date date) {
String[] weekOfDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
Calendar calendar = Calendar.getInstance();
if(date != null){
calendar.setTime(date);
}
int w = calendar.get(Calendar.DAY_OF_WEEK) - 1;
if (w < 0){
w = 0;
}
return weekOfDays[w];
}

上面的DATE_FORMT_3   事实上就是一个格式字符串: "yyyy-MM-dd",或者其它格式你自己定

调用类:

                //生成当前日期和未来30天的日期集合  , i 从1 開始
Date currentDate = new Date();
List<DateBO> listDate = new ArrayList<DateBO>();
for (int i = 1; i <= DAYS; i++) {
DateBO dateBo = new DateBO();
dateBo.setId(i);
//获取计算之后的日期
dateBo.setScheduleDate(DateUtils.calculateDateToString(currentDate, Calendar.DATE, i));
//获取计算之后的日期的星期
dateBo.setWeekDay(DateUtils.getWeekOfDate(DateUtils.calculateDate(currentDate, Calendar.DATE, i)));
listDate.add(dateBo);
}

DateBO 里面的属性: id ,scheduleDate , weekDay  不多说了。自己复制自己測试吧

java一个月日历的更多相关文章

  1. 学习java一个月的进展

    作为一个阶段性总结,有很多的东西需要说明,有细节的,有架构的,且听我细细说来. java和php最大的区别不止是类型的强制定义,而是在设计思路上有着非常重大的偏差(虽然SY3框架已经开始借鉴JAVA的 ...

  2. Java实验项目二——打印某年某月日历

    Program:打印万年历(输入年份,月份,输出该月的日历,已知1900年1月1日是星期一), 要 求: (1)编写一个方法判断闰年: (2)编写一个方法判断某年某月有多少天: (3)编写一个方法计算 ...

  3. 自学一个月的java了

    不知道这篇博文有不有朋友看到.先自我介绍一下,硕士一年级下学期. 对编程感兴趣,硕士一年级下学期转学计算机专业,目前刚好一个月的时间.接触计算机也是刚好一个月的时间. 学习了java,javaweb. ...

  4. java获取本月开始时间和结束时间、上个月第一天和最后一天的时间以及当前日期往前推一周、一个月

    import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.uti ...

  5. java操作时间,将当前时间减一年,减一天,减一个月

    在Java中操作时间的时候,常常遇到求一段时间内的某些值,或者计算一段时间之间的天数 Date date = new Date();//获取当前时间 Calendar calendar = Calen ...

  6. java获取一个月的天数

    import java.text.SimpleDateFormat; import java.util.Calendar; public class Test { public static void ...

  7. 学了近一个月的java web 感想

    对于每天学习的新知识进行一定的总结,是有必要的. 之前我学的每一门知识,我都没有怎么总结自己的问题,也没有怎么去想想该怎样才能学的更好,把知识掌握的更牢固.从现在开始呢,我会每半个月,或每一个月总结总 ...

  8. Java获取时间,将当前时间减一年,减一天,减一个月

    在Java中操作时间的时候,需要计算某段时间开始到结束的区间日期,常用的时间工具 Date date = new Date();//获取当前时间 Calendar calendar = Calenda ...

  9. java_面试_01_一个月的面试总结(java)

    重点知识 由于我面试的JAVA开发工程师,针对于JAVA,需要理解的重点内容有: JVM内存管理机制和垃圾回收机制(基本每次面试都会问,一定要搞得透彻) JVM内存调优(了解是怎么回事,一般做项目过程 ...

随机推荐

  1. 前端到后台ThinkPHP开发整站--php开发案例

    前端到后台ThinkPHP开发整站--php开发案例 总结 还是需要做几个案例,一天一个为佳,那样才能做得快. 从需求分析着手,任务体系要构建好,这样才能非常高效. 转自: 前端到后台ThinkPHP ...

  2. dns-sd._udp.<domain>. 域名发现 本质和MDNS同

    DNS Service Discovery is a way of using standard DNS programming interfaces, servers, and packet for ...

  3. zzulioj--1804--ZY学长的密码(字符串)

    1804: ZY学长的密码 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 140  Solved: 53 SubmitStatusWeb Board ...

  4. 手机验证 发送验证码倒计时js

    html: <input name="Tel" class="weui-input" type="tel" placeholder=& ...

  5. 安卓开发--WebView

    package com.zhangxi.test01; import android.app.Activity;import android.app.ProgressDialog;import and ...

  6. yarn平台的任务调度和执行过程

  7. sql 的几种常用方法

    第一个项目总结基类:database:主要是定义有关数据库的方法: 1.打开数据库 public static void Open() { ( "server=.\\sqlexpress;d ...

  8. <Sicily>Inversion Number(线段树求逆序数)

    一.题目描述 There is a permutation P with n integers from 1 to n. You have to calculate its inversion num ...

  9. mysql 导出到 mongodb 与快速插入测试数据

    快速插入数据: 因为 MongoDB 的底层引擎是 JS 引擎,所以完全可以使用一些 Js 的语法.   for(var i=0;i<10000;i++){    db.ceshi.insert ...

  10. caioj 1084 动态规划入门(非常规DP8:任务安排)(取消后效性)

    这道题的难点在于,前面分组的时间会影响到后面的结果 也就是有后效性,这样是不能用dp的 所以我们要想办法取消后效性 那么,我们就可以把影响加上去,也就是当前这一组加上了s 那么就把s对后面的影响全部加 ...