java学习初探十一之日期处理

1.获取自 1970年1月1日 00时00分000毫秒 到当前的毫秒数
2.Date日期格式化String
3.String日期 转Date

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateTest {

    public static void main(String[] args) throws ParseException {
        //从1970年1月1日 00时00分000毫秒当前日期的毫秒数
        long now=System.currentTimeMillis();
        System.out.println(now);//1505059543271

        //获取系统当前时间
        Date nowtime=new Date();
        System.out.println(nowtime);//Mon Sep 11 00:10:20 CST 2017

        //以上程序说明java.util.Date;已经重写了object中的toString
        //只不过重写的结果对中国人讲不太容易理解

        //所以引入格式化日期
        //java.util.Date-->String
        /*
         * 日期格式
         * y 年
         * M 月
         * d 日
         * H 小时
         * m 分
         * s 秒
         * S 毫秒
         */
        //1.创建日期格式化对象
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy年mm月dd日  hh:mm:ss:SSS");
        //2.格式化
        String strTime=sdf.format(nowtime);
        System.out.println(strTime);//2017年18月11日  12:18:17:666


        //获取特定的日期
        String strdate="2008年08月08日  08:08:08 888";
        //String-->Date
        //1.创建日期格式化对象
        //格式不能随意,应该和上面的字符串保持一致
        SimpleDateFormat sDateFormat=new SimpleDateFormat("yyyy年mm月dd日 HH:mm:ss SSS");
        //2.将字符串转换成日期类型
        Date date=sDateFormat.parse(strdate);
        System.out.println(date);//Tue Jan 08 08:08:08 CST 2008
    }

}

4.Date t1=new Date(1000);//构造方法中加毫秒参数

import java.text.SimpleDateFormat;
import java.util.Date;
public class DateTest02 {
    public static void main(String[] args) {
        //1000是1970年1月1日 00:00:00 000的毫秒数
        Date t1=new Date(1000);
        SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy,MM,dd HH,mm,ss,SSS");
        String date=simpleDateFormat.format(t1);
        //北京东八区,早八个小时 所以是八点
        System.out.println(date);//1970,01,01 08,00,01,000

        //获取当前时间的前十分钟时间
        long nowmillis=System.currentTimeMillis();//获取当前时间毫秒数
        long tenbeforemillis=nowmillis-10*60*1000;//获取十分钟前时间毫秒数
        Date tenbefordate=new Date(tenbeforemillis);
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 SSS毫秒");
        String tenbefortime=sdf.format(tenbefordate);
        System.out.println("当前时间十分钟前时间为:"+tenbefortime);
    }
}

5 日历 java.util.Calendar

import java.util.Date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;

public class DateTest04 {
    public static void main(String[] args) throws ParseException {
        //获取系统当前的日历
        Calendar c=Calendar.getInstance();
        //查看当前日历的“星期几”
        int i=c.get(Calendar.DAY_OF_WEEK);
        System.out.println("今天是星期:"+i);//2  外国人把星期日看作是1

        //查看今天是多少号
        System.out.println(c.get(Calendar.DAY_OF_MONTH));//11

        System.out.println(c.get(Calendar.DAY_OF_YEAR));//一年中的第 254天

        //获取2008 8 8 是星期几
        //获取2008 8 8 的日历
        String strTime="2008,08,08";
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy,MM,dd");
        Date dateTime=sdf.parse(strTime);
        c.setTime(dateTime);//该日历为2008 8 8的日历

        //输出星期几
        System.out.println(c.get(Calendar.DAY_OF_WEEK));//6 星期五
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值