项目须要,获取当天之后的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. EntityFramework学习笔记1--安装

    1.新建项目 2.工具=>NuGet程序包管理器=>程序包管理控制器 3.PM> Install-Package EntityFramework 安装EF

  2. BZOJ 4448 主席树+树链剖分(在线)

    为什么题解都是离线的-- (抄都没法抄) 搞一棵主席树 1 操作 新树上的当前节点设成1 2 操作 查max(i-xx-1,0)那棵树上这条路径上有多少个点是1 让你找经过了多少个点 查的时候用dee ...

  3. android页面布局(listview填充中间)

    <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android=&q ...

  4. C语言基础-第六章

    数组和字符串 1.一维数组 数组当中最简单的数据 声明: 类型说明符 数组名[常量表达式] int a[3];说明a的长度为3,那么给a赋值的语句是:a={1,2,3}; 2.多维数组 2.1 二维数 ...

  5. 08:Challenge 1

    总时间限制:  10000ms 单个测试点时间限制:  1000ms 内存限制:  262144kB 描述 给一个长为N的数列,有M次操作,每次操作是以下两种之一: (1)修改数列中的一个数 (2)求 ...

  6. 《剑指offer》二进制中1的个数

    一.题目描述 输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. 二.牛客网提供的框架 class Solution { public: int NumberOf1(int n) { } ...

  7. 禁用cache

    Z:\src\services\network\network_context.cc:http_cache_enabled

  8. 最长回文字串 (The longest palindrome substring)

    这两天去学了一下,觉得下面那篇文章写的很好,有例子,比较容易懂,所以转一下. 以下内容来自:hihoCoder: 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互 ...

  9. POJ 2081 Recaman's Sequence

    Recaman's Sequence Time Limit: 3000ms Memory Limit: 60000KB This problem will be judged on PKU. Orig ...

  10. HTML学习----------DAY1 第一节

    什么是 HTML? HTML 是用来描述网页的一种语言. HTML 指的是超文本标记语言 (Hyper Text Markup Language) HTML 不是一种编程语言,而是一种标记语言 (ma ...