黑马程序员——Java基础---Date/ Calender

来源:互联网 发布:陈奕迅48首选淘宝 编辑:程序博客网 时间:2024/05/17 01:05

——- android培训、java培训、期待与您交流! ———-

Date

日期对象和毫秒值之间的转换。

1,日期对象转成毫秒值。Date类中的getTime方法。2,如何将获取到的毫秒值转成具体的日期呢?    Date类中的setTime方法。也可以通过构造函数。     
//日期对象转成毫秒值        Date d = new Date();        long time1 = d.getTime();        long time2 = System.currentTimeMillis(); / /毫秒值。//毫秒值转成具体的日期        long time = 1322709921312l;        Date d = new Date();        d.setTime(time);

将日期字符串转换成日期对象:

使用的就是DateFormat方法中的 Date parse(String source) ;

public static void method() throws Exception {    String str_time = "2011/10/25";    DateFormat df = new SimpleDateFormat("yyyy/MM/dd"); //SimpleDateFormat作为可以指定用户自定义的格式来完成格式化。    Date d = df.parse(str_time);}

具体方法演示

package XianChen;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.*;public class LiZi {    public static void main(String[] args) throws Exception {        test();    }    public static void test() throws Exception {        // 默认是当前时间建立的日期对象 t1 ==t2        Date d = new Date();//      long t1 =d.getTime();//      long t2 =System.currentTimeMillis();         String str = "2011/10/25";//      创建一个简单日期格式//      SimpleDateFormat() 默认格式:15-6-8 下午8:04         DateFormat sf = new SimpleDateFormat("yyyy/MM/dd E hh:mm:ss");//      默认日格式化         DateFormat df= DateFormat.getDateInstance(DateFormat.LONG);//      将给定字符串格式化为日期对象//      d=sf.parse(str);//  报异常 与 给定格式不符"yyyy/MM/dd hh:mm:ss“//      格式化给定日期        String time =sf.format(d);        System.out.println(time);//      2015/06/08 星期一 08:06:55        String timed =df.format(d);        System.out.println(timed);  //              2015年6月8日    }}

Calendar:日历类

public static void method(){    Calendar c = Calendar.getInstance();    System.out.println(c.get(Calendar.YEAR)+"年"+(c.get(Calendar.MONTH)+1)+"月"                    +getNum(c.get(Calendar.DAY_OF_MONTH))+"日"                    +"星期"+getWeek(c.get(Calendar.DAY_OF_WEEK)));}public static String getNum(int num){    return num>9 ? num+"" : "0"+num;}public static String getWeek(int index){/*查表法:建立数据的对应关系.最好:数据个数是确定的,而且有对应关系。如果对应关系的一方,是数字,而且可以作为角标,那么可以通过数组来作为表。*/    String[] weeks = {"","日","一","二","三","四","五","六"};    return weeks[index];}

代码演示

package XianChen;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.*;public class LiZi {    public static void main(String[] args) throws Exception {//      test();        calender();    }    public static void calender() {        // 在具有默认语言环境的默认时区内使用当前时间构造一个默认的 GregorianCalendar            Calendar calendar = new GregorianCalendar();        // 创建一个Date            Date trialTime = new Date();        // 看看当前的trialTime            System.out.println("Date : " + trialTime);        // 使用给定的 Date 设置此 Calendar 的时间。            calendar.setTime(trialTime);        // 这个就是输出年            System.out.println("YEAR: " + calendar.get(Calendar.YEAR));        // 这是一个特定于日历的值。一年中的第一个月是 JANUARY,它为 0;最后一个月取决于一年中的月份数。        // 所以依次类推,输出月要+1,不然结果不是想要的效果            System.out.println("MONTH: " + calendar.get(Calendar.MONTH + 1));        // 指示当前年中的星期数            System.out.println("WEEK_OF_YEAR: " + calendar.get(Calendar.WEEK_OF_YEAR));        // 指示当前月中的星期数            System.out.println("WEEK_OF_MONTH: " + calendar.get(Calendar.WEEK_OF_MONTH));        // 查看是几号            System.out.println("DATE: " + calendar.get(Calendar.DATE));        // 当前月的第几天            System.out.println("DAY_OF_MONTH: " + calendar.get(Calendar.DAY_OF_MONTH));        // 当前年的第几天            System.out.println("DAY_OF_YEAR: " + calendar.get(Calendar.DAY_OF_YEAR));        // 指示一个星期中的某天            System.out.println("DAY_OF_WEEK: " + calendar.get(Calendar.DAY_OF_WEEK));//          定义星期表 通过查表法返回正确星期数:            String[] weeks = {"","日","一","二","三","四","五","六"};            System.out.println("today is 星期"+weeks[calendar.get(Calendar.DAY_OF_WEEK)]);//          today is 星期一        // 当前天在这个月的第几个星期            System.out.println("DAY_OF_WEEK_IN_MONTH: " + calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH));        // 判断是AM还是PM 中午之前还是在中午之后。,如果输出0是AM 上午,如果输出1是PM下午            System.out.println("AM_PM: " + calendar.get(Calendar.AM_PM));        // HOUR 用于 12 小时制时钟 ,假设现在上下午3点,则输出3            System.out.println("HOUR: " + calendar.get(Calendar.HOUR));        // 输出当前小时在这天的值,假设现在是下午3点,则输出15            System.out.println("HOUR_OF_DAY: " + calendar.get(Calendar.HOUR_OF_DAY));        // 输出分钟            System.out.println("MINUTE: " + calendar.get(Calendar.MINUTE));        // 输出秒            System.out.println("SECOND: " + calendar.get(Calendar.SECOND));        // 输出毫秒            System.out.println("MILLISECOND: " + calendar.get(Calendar.MILLISECOND));        // 以毫秒为单位指示距 GMT 的大致偏移量。            System.out.println("ZONE_OFFSET: "                + (calendar.get(Calendar.ZONE_OFFSET) / (60 * 60 * 1000)));        // 以毫秒为单位指示夏令时的偏移量。            System.out.println("DST_OFFSET: " + (calendar.get(Calendar.DST_OFFSET) / (60 * 60 * 1000)));    }    public static void test() throws Exception {    }}/*        运行结果:        Date : Mon Jun 08 21:53:00 CST 2015        YEAR: 2015        MONTH: 24        WEEK_OF_YEAR: 24        WEEK_OF_MONTH: 2        DATE: 8        DAY_OF_MONTH: 8        DAY_OF_YEAR: 159        DAY_OF_WEEK: 2        today is 星期一        DAY_OF_WEEK_IN_MONTH: 2        AM_PM: 1        HOUR: 9        HOUR_OF_DAY: 21        MINUTE: 53        SECOND: 0        MILLISECOND: 424        ZONE_OFFSET: 8        DST_OFFSET: 0 */

——- android培训、java培训、期待与您交流! ———-

0 0
原创粉丝点击