java中有关日期的常用操作

package test;

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

public class TestDate {
        public static void main(String[] args) throws ParseException {
            //常用的可以操作时间的有 Date和Calendar,其中Date已经不推荐使用
            
            //Calendar在使用set,先要进行clear,获取时间标准1970-01-01
            Calendar calendar = Calendar.getInstance();
            calendar.clear();
            calendar.set(2017, 01, 01);//输出结果为2017-02-01
            //将Calendadr转为Date
            Date date = (Date) calendar.getTime(); //Wed Feb 01 00:00:00 CST 2017
            //格式化
            SimpleDateFormat sim = new SimpleDateFormat("yyyy-MM-dd");
            //将date转为String类型
            String da = sim.format(date);//2017-02-01格式
            
            //2.将String类型的时间转换为Date类型
            String str = "2017-02-01";
            Date date1 = sim.parse(str); //Wed Feb 01 00:00:00 CST 2017
            
            // 使用Calendar设置年,输出结果:Mon Feb 01 00:00:00 CST 2010  2010-02-01
            calendar.set(Calendar.YEAR, 2010);
            System.out.println(calendar.getTime());
            System.out.println(sim.format(calendar.getTime()));
            
            
            // 使用Calendar和数字设置月,注意月份从0开始,代表1月,输出结果:Fri Jan 01 00:00:00 CST 2010
            calendar.set(Calendar.MONTH, 0);
            System.out.println(calendar.getTime());
            
            // 使用Calendar和数字设置日,输出结果:
            calendar.set(Calendar.DATE, 5);
            System.out.println(calendar.getTime());
            
            // 设置小时
            calendar.set(Calendar.HOUR, 15);
            System.out.println(calendar.getTime());
            
            // 根据毫秒数设置Calendar时间
            calendar.setTimeInMillis(0);
            
            //日期计算问题add()方法使用
            SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
            Calendar cal=Calendar.getInstance();
            cal.set(Calendar.YEAR, 2008);
            cal.set(Calendar.MONTH, 9);
            cal.set(Calendar.DAY_OF_MONTH, 3);
            System.out.println(df.format(cal.getTime()));//2008-10-03
            
            cal.add(Calendar.DATE, -4);
            Date date3=cal.getTime();                //Calendar转换为Date
            System.out.println(df.format(date3));    //2008-09-29
            
            cal.add(Calendar.DATE, 4);  
            date3=cal.getTime();
            System.out.println(df.format(date3));    //2008-10-03
            
        }
}



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值