</pre><pre name="code" class="java">示例一:
import java.util.Date;
/**
* java.util.Date
* 该类内部维护一个long值,表示从1970年元旦到要描述的
* 时间之间所经过的毫秒值
* 由于Date的设计缺陷,现在仅用它表示时间,而不做时间
* 相关的其他操作。
* @author Administrator
*
*/
public class DateDemo1 {
public static void main(String[] args) {
/*
* 创建的对象默认表示当前系统时间
*/
Date date = new Date();
/*
* Date重写了toString方法
* 只是对非英语地区而言,格式不是很友好
*/
System.out.println(date);
/*
* long getTime()
* 获取当前Date内部维护的long值。
* 即:1970年元旦到描述的时间点之间的毫秒值
*/
long time = date.getTime();
System.out.println(time);
//明天这一刻的毫秒值
time += 1000*60*60*24;
/*
* void setTime(long time)
* 将给定的毫秒值设置到当前Date对象中,使其表示
* 该时间
*/
date.setTime(time);
System.out.println(date);
}
}
示例二:
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* 该类的主要作用:
* 1:将Date转换为字符串
* 2:将字符串转换为Date
*
* 在两者之间进行转换是需要指定格式的。
* 而格式也是使用一个字符串描述的。
* @author Administrator
*
*/
public class SimpleDateFormatDemo1 {
public static void main(String[] args) {
//当前系统时间
Date now = new Date();
//Date的toString
System.out.println(now);
/*
* 希望输出的字符串样子:
* 2015-04-07 11:00:58
* yyyy-MM-dd HH:mm:ss
*/
//java.text.SimpleDateFormat
SimpleDateFormat sdf
= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
/*
* String format(Date date)
* 将给定的Date所表示的时间按照当前SimpleDateForma
* 指定的日期格式转换为对应的字符串
*/
String str = sdf.format(now);
System.out.println(str);
}
}
示例三:
import java.util.Calendar;
/**
* Calendar设置时间
* 可以对当前Calendar的不同时间单位进行分别的设置
* 使得其可以表示给定的时间
* @author Administrator
*
*/
public class CalendarDemo2 {
public static void main(String[] args) {
/*
* void set(int field,int value)
* 对给定的时间分量(单位)设置给定的值。
*
*/
Calendar calendar = Calendar.getInstance();
/*
* 当我们对某个时间分量设置新值后,通常年月日时分秒
* 能不变的就不变,但是有些情况也是要受到牵连而跟着
* 变化。比如星期几。
*
* 设置为2008年
* 对于时间分量,Calendar有不同的常量进行对应
*/
System.out.println(calendar.getTime());
calendar.set(Calendar.YEAR, 2008);
System.out.println(calendar.getTime());
/*
* 设置为8月
* 月份的值有常量对应
* 若写数字需要注意:0表示1月,以此类推 11表示12月
*
*/
calendar.set(Calendar.MONTH, 7);
System.out.println(calendar.getTime());
/*
* 设置日
* 8号
* DATE:月中的天 几号
* DAY_OF_MONTH:与DATE等价
*
* DAY_OF_WEEK:星期中的天 星期几
* DAY_OF_YEAR:年中的天
*/
calendar.set(Calendar.DAY_OF_MONTH, 8);
System.out.println(calendar.getTime());
/*
* 设置时
* HOUR:12小时制
* HOUR_OF_DAY:24小时制
*/
calendar.set(Calendar.HOUR_OF_DAY, 20);
calendar.set(Calendar.MINUTE, 8);
calendar.set(Calendar.SECOND, 8);
System.out.println(calendar.getTime());
}
示例四;
import java.util.Calendar;
/**
* 获取当前Calendar表示的时间中某个时间分量对应的值
*
* in get(int field)
* 获取给定的时间分量所对应的值
* @author Administrator
*
*/
public class CalendarDemo3 {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
//获取年
int year = calendar.get(Calendar.YEAR);
System.out.println("year:"+year);
//获取月
int month = calendar.get(Calendar.MONTH);
System.out.println("month:"+(month+1));
//获取日
int date = calendar.get(Calendar.DATE);
System.out.println("date:"+date);
//今年的第几天
int days = calendar.get(Calendar.DAY_OF_YEAR);
System.out.println("今年的第:"+days+"天");
//今天星期几
int dow = calendar.get(Calendar.DAY_OF_WEEK);
System.out.println("星期:"+(dow==1?7:dow-1));
}
}
示例五:
import java.util.Calendar;
/**
* 获取某个时间分量所允许的最大值
* @author Administrator
*
*/
public class CalendarDemo4 {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
/*
* 总是以当前Calendar所表示的时间作为基准,看给定的
* 时间分量所允许的最大值
*/
int days
=calendar.getActualMaximum(Calendar.DAY_OF_YEAR);
System.out.println("一共:"+days+"天");
}
}
示例六:
import java.util.Calendar;
/**
* 计算时间的方法
* void add(int field,int value)
* 对给定的时间分量累加给定的值。若值为负数则是减法。
* @author Administrator
*
*/
public class CalendarDemo5 {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
/*
* 2年3个月零15天以后的那周的周二是几号
*/
calendar.add(Calendar.YEAR, 2);
calendar.add(Calendar.MONTH, 3);
calendar.add(Calendar.DAY_OF_YEAR, 15);
System.out.println(calendar.getTime());
calendar.set(Calendar.DAY_OF_WEEK, 3);
System.out.println(calendar.getTime());
}
}