1970-1-1距离现在的时间毫秒--获取的long值
Java.util.Date
Date date= new Date();
System.out.println(date);// 输出当前时间
lont time =date.getTime(); ---距现在的时间 获取long 值
date.setTime(); ----设置你想要的long值
java.text.SimpleDateForma;
可以根据一个特定的日期格式字符串 ----yyyy-MM-dd HH:mm:ss
SimpleDateFormat sdf = new Simle--("yyyy-MM-dd HH---")
sdf.Format() --标准格式转化为 指定格式
sdf.parse() --指定格式解析为标准格式 --要抛异常
Calender 类--是个抽象类 -----------Calendar --Date --String之间的转换 看代码---- getInstance --很重要
代码在 java_se中的day03中,getInstance--set--get--add四个重点的类
package day03;
import java.text.ParseException;
import java.text.SimpleDateFormat;
/**
* java.uitl.Calendar
* 日历类,用于计算时间,操作时间使用
* Calender 是一个抽象类只规定了操作时间的相关方法
* 定义。并没有具体实现
* 常用类GregorianCalendar 即:阳历历法
*
* Calendar提供了一个静态方法 getInstance,该方法可以
* 根据当前系统所在地返回一个合适的日历实现类
* 大部分都是返回阳历实现类GreforianCalendar
*
*
*
*/
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class Calendar_getInstance {
public static void main(String args[]) throws ParseException{
/*
* Calender内部表示一个时间
* 默认创建出来的Calendar表示
* 当前时间
*/
/*
* Calendar -->Date
* getTime();
*/
Calendar calendar = Calendar.getInstance();
System.out.println(calendar);
Date date = calendar.getTime();// 得到标准的格式
System.out.println(date);
// System.out.println(date.getTime()); 得到long值
// long k =calendar.getTime().getTime(); 得到long值
/*
* 一 :Date ->Calendar
* Calendar 提供了方法
* void setTime(Date date)
* 可以使当前Calendar 表示给定的Date所表示的日期
*/
Date d2 = new Date();
Calendar c2 = Calendar.getInstance();
c2.setTime(d2);
/*
* Calendar -->String
* 首先
* Calendar ->Date
* 再
* Date->String 通过SimplDateFormat 转化为字符串
*/
Calendar c3 = Calendar.getInstance();
Date d3 = new Date();
d3=c3.getTime();
SimpleDateFormat s3 = new SimpleDateFormat("yyyy MM dd HH:mm:ss");
String str3=s3.format(d3);
System.out.println(str3);
/*
* String -->Calendar
* 首先
* 解析为Date --parse()
* 通过 Calendar 的setTime() 将转化为Calendar();
*/
String str4 = "2008-08-08";
SimpleDateFormat s4 = new SimpleDateFormat("yyyy-MM-dd");
Date d4 =s4.parse(str4);
Calendar c4 = Calendar.getInstance();
System.out.println(c4);
c4.setTime(d4);
System.out.println(c4);
}
}
package day03;
import java.util.Calendar;
/**
* Calendar 提供了可以对指定时间分量设置一个值
* void set (int field ,int value)
*
*
*/
public class Calendar_set {
public static void main(String [] args){
Calendar calendar = Calendar.getInstance();
System.out.println(calendar.getTime());
/*
* 表示2008-08-08 20-08-08
*/
//设置年
calendar.set(Calendar.YEAR,2008);
System.out.println(calendar.getTime());
//设置月
calendar.set(Calendar.MONTH, 7);
System.out.println(calendar.getTime());
//设置日
calendar.set(Calendar.DAY_OF_MONTH,8);
System.out.println(calendar.getTime());
calendar.set(Calendar.HOUR_OF_DAY,20);
System.out.println(calendar.getTime());
calendar.set(Calendar.MINUTE, 8);
calendar.set(Calendar.SECOND,8);
System.out.println(calendar.getTime());
}
}
package day03;
import java.util.Calendar;
/**
* Calendar 提供了用于计算时间的方法
*
* void add (int field ,int value )
* 是指定的时间分量加上给定的值,若给定的值为负数
* 则是减去
*
*
*/
public class Calendar_add {
public static void main(String args[]){
// 查看三年四月零100天以后是哪天
Calendar calendar =Calendar.getInstance();
calendar.add(Calendar.YEAR,4);
calendar.add(Calendar.MONTH, 4);
calendar.add(Calendar.DAY_OF_YEAR, 100);
System.out.println(calendar.getTime());
}
}
package day03;
import java.util.Calendar;
/**
* Calendar提供的方法
* int get(int field)
* 该方法可以获取给定时间分量所对应的值
*
* 参数int ,不同的值表示不同的时间分量
* 无需记住每个值表示什么,因为Calendar提供了大量
* 常量表示了这些时间分量值
*
*
*/
public class Calendar_get {
public static void main(String args[]){
Calendar calendar = Calendar.getInstance();
//获取年?
int year =calendar.get(Calendar.YEAR);
System.out.println(year);
//获取月---月从0 开始
int month =calendar.get(Calendar.MONTH)+1;
System.out.println(month);
//获取日
int day =calendar.get(Calendar.DAY_OF_YEAR);
System.out.println(day); // day of mouth day of week
int h=calendar.get(Calendar.HOUR_OF_DAY);
System.out.println(h);
int m=calendar.get(Calendar.MINUTE);
System.out.println(m);
int s=calendar.get(Calendar.SECOND);
System.out.println(s);
//星期从星期天开始
String [] data ={"日","一","二","三","四","五","六"};
int dow =calendar.get(Calendar.DAY_OF_WEEK)-1;
System.out.println("周"+data[dow]);
int doy=calendar.get(Calendar.WEEK_OF_YEAR);
System.out.println("第"+doy+"周");
// 获取分量的最大值
int dd=calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println("这个月一共"+dd+"天");
}
}