java的日期和时间

本文提供了一个Java程序示例,展示了如何使用Calendar类获取指定日期前后的时间,并通过SimpleDateFormat进行日期格式化。此外,还演示了如何获取当前日期的一周中的某一天。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.cz.test;

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

public class TestTime {
    /** 
     * 得到几天前的时间 
     * @param d 
     * @param day 
     * @return 
     */  
    public static Date getDateBefore(Date d,int day){  
     Calendar now =Calendar.getInstance();  
     now.setTime(d);  
     now.set(Calendar.DATE,now.get(Calendar.DATE)-day);  
     return now.getTime();  
    }  
      
    /** 
     * 得到几天后的时间 
     * @param d 
     * @param day 
     * @return 
     */  
    public static Date getDateAfter(Date d,int day){  
     Calendar now =Calendar.getInstance();  
     now.setTime(d);  
     now.set(Calendar.DATE,now.get(Calendar.DATE)+day);  
     return now.getTime();  
    }  

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		TestTime testTime=new TestTime();
		Date date=new Date();
		System.out.println("当前时间:"+date);
		Date d1=testTime.getDateBefore(date, 1);
		System.out.println("之前时间:"+d1.toLocaleString());
		Date d2=testTime.getDateAfter(date, 1);
		System.out.println("之后时间:"+d2);
		System.out.println("****************************");
		// 得到当前日期
		Calendar calendar1 = Calendar.getInstance();
		// 加上1天
		calendar1.add(Calendar.DAY_OF_YEAR, 1);
		// 时间格式化
		SimpleDateFormat mFormat1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
		// 输出日期
		System.out.println(mFormat1.format(calendar1.getTime()));
		// 一星期的第几天(星期天为第一天)
		System.out.println(calendar1.get(Calendar.DAY_OF_WEEK));
		// 得到当前日期
		Calendar calendar2 = Calendar.getInstance();
		System.out.println("****************************");
		// 减去1天
		calendar2.add(Calendar.DAY_OF_YEAR, -1);
		// 时间格式化
		SimpleDateFormat mFormat2 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
		// 输出日期
		System.out.println(mFormat2.format(calendar2.getTime()));
		// 一星期的第几天(星期天为第一天)
		System.out.println(calendar2.get(Calendar.DAY_OF_WEEK)); 

	}

}

 

控制台输出:

当前时间:Thu Sep 20 10:19:52 CST 2012
之前时间:2012-9-19 10:19:52
之后时间:Fri Sep 21 10:19:52 CST 2012
****************************
2012-09-21 10:19:52
6
****************************
2012-09-19 10:19:52
4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值