JAVA基础实现对日期的常用操作

这篇博客展示了如何使用Java进行日期增加、判断闰年和获取星期几的操作。通过示例代码,详细解释了如何增加一天、一周、一年,并提供了获取当前日期是星期几的完整方法。此外,还包含了一个测试类来验证这些功能。

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

日期增加一天、一周、一年

代码示例

// 获取当前时间
date=new date();  
Calendar calendar = new GregorianCalendar(); 
calendar.setTime(date); 
// 把日期往后增加一天,整数  往后推,负数往前移动 
calendar.add(calendar.DATE, 1); 
// 这个时间就是日期往后推一天的结果 
date=calendar.getTime(); 


推迟一周示例: 
Calendar curr = Calendar.getInstance(); //获取当前时间
curr.set(Calendar.DAY_OF_MONTH,curr.get(Calendar.DAY_OF_MONTH)+7); //给当前时间增加一周
Date date=curr.getTime();//获取新的时间
推迟一个月示例: 
Calendar curr = Calendar.getInstance(); 
curr.set(Calendar.MONTH,curr.get(Calendar.MONTH)+1); //增加一月
Date date=curr.getTime();
推迟一年示例: 
Calendar curr = Calendar.getInstance(); 
curr.set(Calendar.YEAR,curr.get(Calendar.YEAR)+1); //增加一年
Date date=curr.getTime();

判断是否是润年


//判断是否是闰年
int years=curr.get(Calendar.YEAR);
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
  //判断是否闰年,闰年366天
    days = 366;
 }else{
    days=365;
 }

获取今天是星期几

 String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
       // String[] weekDays = {"星期六","星期日", "星期一", "星期二", "星期三", "星期四", "星期五"};
        Calendar calendar=Calendar.getInstance();
        System.out.println("今天是中国的"+weekDays[calendar.get(Calendar.DAY_OF_WEEK)-1]);
        System.out.println("得到外国的今天是这一周的第"+calendar.get(Calendar.DAY_OF_WEEK)+"天");

完整方法

/**
     * 获取当前日期是星期几
     *
     * @param dt
     * @return 当前日期是星期几
     */
    public static String getWeekOfDate(Date dt) {
        String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
        Calendar cal = Calendar.getInstance();
        cal.setTime(dt);
        int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
        if (w < 0)
            w = 0;

        return weekDays[w];
    }

测试类


import java.util.Calendar;
import java.util.Date;

public class cs {

    public static void main(String[] args) {
            String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
            Calendar cal = Calendar.getInstance();
            Date date = new Date();
            cal.setTime(date);

            int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
            if (w < 0)
                w = 0;
            System.out.println(weekDays[w]);

            //今天是几号
            int day=date.getDate();
            System.out.println("Today is :"+day+"号");
            Calendar c=Calendar.getInstance();
            c.setTime(date);

            //今天是这个星期的第几天
            c.setTime(date);
            int  dayForWeek = 0 ;
            if (c.get(Calendar.DAY_OF_WEEK) == 1 ){
                dayForWeek = 7 ;
            }else {
                dayForWeek = c.get(Calendar.DAY_OF_WEEK) - 1 ;
            }
            System.out.println("week:"+dayForWeek);

            //当前月的最后一天是几号
            int lastday=c.getActualMaximum(Calendar.DAY_OF_MONTH);
            System.out.println("这个月最后一天是:"+lastday+"号");
        }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值