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


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

    代码示例

    1. // 获取当前时间
    2. date=new date();
    3. Calendar calendar = new GregorianCalendar();
    4. calendar.setTime(date);
    5. // 把日期往后增加一天,整数 往后推,负数往前移动
    6. calendar.add(calendar.DATE, 1);
    7. // 这个时间就是日期往后推一天的结果
    8. date=calendar.getTime();
    9. 推迟一周示例:
    10. Calendar curr = Calendar.getInstance(); //获取当前时间
    11. curr.set(Calendar.DAY_OF_MONTH,curr.get(Calendar.DAY_OF_MONTH)+7); //给当前时间增加一周
    12. Date date=curr.getTime();//获取新的时间
    13. 推迟一个月示例:
    14. Calendar curr = Calendar.getInstance();
    15. curr.set(Calendar.MONTH,curr.get(Calendar.MONTH)+1); //增加一月
    16. Date date=curr.getTime();
    17. 推迟一年示例:
    18. Calendar curr = Calendar.getInstance();
    19. curr.set(Calendar.YEAR,curr.get(Calendar.YEAR)+1); //增加一年
    20. Date date=curr.getTime();

    判断是否是润年

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

    获取今天是星期几

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

    完整方法

    1. /**
    2. * 获取当前日期是星期几
    3. *
    4. * @param dt
    5. * @return 当前日期是星期几
    6. */
    7. public static String getWeekOfDate(Date dt) {
    8. String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
    9. Calendar cal = Calendar.getInstance();
    10. cal.setTime(dt);
    11. int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
    12. if (w < 0)
    13. w = 0;
    14. return weekDays[w];
    15. }

    测试类

    1. import java.util.Calendar;
    2. import java.util.Date;
    3. public class cs {
    4. public static void main(String[] args) {
    5. String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
    6. Calendar cal = Calendar.getInstance();
    7. Date date = new Date();
    8. cal.setTime(date);
    9. int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
    10. if (w < 0)
    11. w = 0;
    12. System.out.println(weekDays[w]);
    13. //今天是几号
    14. int day=date.getDate();
    15. System.out.println("Today is :"+day+"号");
    16. Calendar c=Calendar.getInstance();
    17. c.setTime(date);
    18. //今天是这个星期的第几天
    19. c.setTime(date);
    20. int dayForWeek = 0 ;
    21. if (c.get(Calendar.DAY_OF_WEEK) == 1 ){
    22. dayForWeek = 7 ;
    23. }else {
    24. dayForWeek = c.get(Calendar.DAY_OF_WEEK) - 1 ;
    25. }
    26. System.out.println("week:"+dayForWeek);
    27. //当前月的最后一天是几号
    28. int lastday=c.getActualMaximum(Calendar.DAY_OF_MONTH);
    29. System.out.println("这个月最后一天是:"+lastday+"号");
    30. }
    31. }

  • 相关阅读:
    C++设计模式之代理模式(结构型模式)
    vue-element-admin 集成框架设置中文语言
    ERP是什么?
    【编程题】【Scratch三级】2019.12 判断奇偶数
    Linux(2):初探
    【小超嵌入式】C++图书管理系统详细分析
    人类真的与恐龙无缘见面吗?看看雕刻和绘画怎样说
    理“ Druid 元数据”之乱
    软考高级系统架构设计师系列论文二十三:论数据中心集中存储架构
    docker保存镜像、打包tar、加载tar镜像
  • 原文地址:https://blog.csdn.net/weixin_53998054/article/details/126405957