java中的GregorianCalendar类
2016-01-05 23:17
609 查看
Java中将记录时间的类与表示日期的类分开,分别为表示时间点信息的Date类;表示人们所熟悉的公历表示法的GregorianCalendar类
GregorianCalendar类提供的方法有很多,而构造其对象的方式也很多
创建GregorianCalendar对象
new GregorianCalendar();
new GregorianCalendar(2007, 1, 17);
new GregorianCalendar(2007,Calendar.FEBRUAY,17);
new GregorianCalendar(2007,Calendar.FEBRUAY,17,18,15,23) //2007年2月17日18时15分23秒
常用方法
void add(int field, int amount)
int get(int field)
void set(int field, int value)
Date getTime() //返回当前对象所描述的时间点
void setTime(Date date)
利用GregorianCalendar类功能在控制台显示当前月日历的例子,该例说明了上述很多方法的使用。
//利用GregorianCalendar类功能在控制台显示当前月日历的例子
//GregorianCalendar类示例
package chapter03.sample3_32;
import java.util.*;
public class Sample3_32{
public static void main(String[] args){
//创建当前日历对象
GregorianCalendar now = new GregorianCalendar();
//从当前时期对象中取出时间日期对象
Date date = now.getTime();
//将时间日期对象按字符串形式打印
System.out.println(date.toString());
//重新将时间对象设置到日期对象中
now.setTime(date);
//从当前日期对象中取出当前月份、日期
int today = now.get(Calendar.DAY_OF_MONTH);
int month = now.get(Calendar.MONTH);
//设置日期为本月开始日期
now.set(Calendar.DAY_OF_MONTH,1);
//获取本月开始日期在一周中的编号
int week = now.get(Calendar.DAY_OF_WEEK);
//打印日历头并换行
System.out.println("星期日 星期一 星期二 星期三 星期四 星期五 星期六");
//设置当前月中第一天的开始位置
for(int i = Calendar.SUNDAY; i < week; i++)
System.out.print(" ");
//按规格循环打印当前的日期数字
while(now.get(Calendar.MONTH) == month){
//取出当前日期
int day = now.get(Calendar.DAY_OF_MONTH);
//设置日期数字小于10与不小于10两种情况的打印规格
if(day < 10){
//设置当前日期的表示形式
if(day == today)
System.out.print(" <" + day + "> ");
else
System.out.print(" " + day + " ");
}else{
//设置当前日期的表示形式
if(day == today)
System.out.print("<" + day + "> ");
else
System.out.print(" " + day + " ");
}
//设置什么时候换行
if(week == Calendar.SATURDAY){
System.out.println();
}
//设置日期与星期几为下一天
now.add(Calendar.DAY_OF_MONTH,1);
week = now.get(Calendar.DAY_OF_WEEK);
}
}
}
GregorianCalendar类提供的方法有很多,而构造其对象的方式也很多
创建GregorianCalendar对象
new GregorianCalendar();
new GregorianCalendar(2007, 1, 17);
new GregorianCalendar(2007,Calendar.FEBRUAY,17);
new GregorianCalendar(2007,Calendar.FEBRUAY,17,18,15,23) //2007年2月17日18时15分23秒
常用方法
void add(int field, int amount)
int get(int field)
void set(int field, int value)
Date getTime() //返回当前对象所描述的时间点
void setTime(Date date)
利用GregorianCalendar类功能在控制台显示当前月日历的例子,该例说明了上述很多方法的使用。
//利用GregorianCalendar类功能在控制台显示当前月日历的例子
//GregorianCalendar类示例
package chapter03.sample3_32;
import java.util.*;
public class Sample3_32{
public static void main(String[] args){
//创建当前日历对象
GregorianCalendar now = new GregorianCalendar();
//从当前时期对象中取出时间日期对象
Date date = now.getTime();
//将时间日期对象按字符串形式打印
System.out.println(date.toString());
//重新将时间对象设置到日期对象中
now.setTime(date);
//从当前日期对象中取出当前月份、日期
int today = now.get(Calendar.DAY_OF_MONTH);
int month = now.get(Calendar.MONTH);
//设置日期为本月开始日期
now.set(Calendar.DAY_OF_MONTH,1);
//获取本月开始日期在一周中的编号
int week = now.get(Calendar.DAY_OF_WEEK);
//打印日历头并换行
System.out.println("星期日 星期一 星期二 星期三 星期四 星期五 星期六");
//设置当前月中第一天的开始位置
for(int i = Calendar.SUNDAY; i < week; i++)
System.out.print(" ");
//按规格循环打印当前的日期数字
while(now.get(Calendar.MONTH) == month){
//取出当前日期
int day = now.get(Calendar.DAY_OF_MONTH);
//设置日期数字小于10与不小于10两种情况的打印规格
if(day < 10){
//设置当前日期的表示形式
if(day == today)
System.out.print(" <" + day + "> ");
else
System.out.print(" " + day + " ");
}else{
//设置当前日期的表示形式
if(day == today)
System.out.print("<" + day + "> ");
else
System.out.print(" " + day + " ");
}
//设置什么时候换行
if(week == Calendar.SATURDAY){
System.out.println();
}
//设置日期与星期几为下一天
now.add(Calendar.DAY_OF_MONTH,1);
week = now.get(Calendar.DAY_OF_WEEK);
}
}
}
相关文章推荐
- 2016-1-5-Thinking in Java 读书笔记(二) --一切都是对象
- java语言编程汇总
- Java 连接 MySQL
- [转]Spring数据库读写分离
- 使用Spring Boot来加速Java web项目的开发
- Java内存模型(转载)
- 自学java hibernate简单使用
- java 将list按指定大小等分,最后多余的单独一份
- Java笔记——IO流分类
- 深入java虚拟机(四)
- Eclipse中Android工程下布局文件无法正常预览
- 删除重复节点
- 自学java SessionFactory的创建
- Spring AOP 详解
- JAVA访问数据库之概述
- Spring AOP 详解
- JAVA相关安装包
- Java中HashMap和TreeMap的区别深入理解
- Spring 学习笔记 4. 尚硅谷_佟刚_Spring_属性配置细节
- Spring AOP 的实现