当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:16:00  来源:本站整理

Java日期操作实例[Java编程]

赞助商链接



  本文“Java日期操作实例[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

定义:周日 --> 周六  为整的一周 . 每周从周日开始算起

业务需求:

1.每周的 周一 周二 周五 上课.

2.计算上完50节课后计算最后一天是日期.

Java代码

package com.test;

import java.util.Calendar;

/**
 * @author: polly 
 * @version:1.0 
 * @category:19/08/09
 * @see:
 *   定义:周日 --> 周六 为整的一周 . 每周从周日开始算起
 *   业务需求:
 *   1.每周的 周一 周二 周五 上课.
 *   2.计算上完50节课后计算最后一天是日期.
 *
 * */

public class CalcTest {

  //定义一周所要上课的天数. 定义为 周一 周二 周五 三天上课!
  static final int HAVEClass_OF_WEEK = 3;

     // 定义该课程为50节
  static final int COURSENUM = 9 ;

  public static void main(String [] args){

    //定义上完好部所需求多少周,取整数  
    int weekCount = -1;

    //取整后多余的天数
    int surplusDay = -1;

    //获得上了多少次课.
    int count = 0;

    // 取整后所剩的课程数  
    int surplusClass = -1;

       //上课所花的时间总数  
    int total = 0;

    Calendar calendar=Calendar.getInstance();

    //获得本日是周几
    int weekdays = (calendar.get(Calendar.DAY_OF_WEEK)-1);

      /* 定义一周中所要上课的天数,若上课一天count+1;
        * 周一 周二 周五 上课
        * 本日是周三,这个星期只有周五上课.
        */
    switch (weekdays){
    case 0:
    case 1: //上课
      count ++ ;
    case 2: //上课
      count ++ ;
    case 3:
    case 4:
    case 5: //上课
      count ++ ;
    case 6:
      break;
    }

    /*
    * 计算本日是周几,假如不是周末,则计算到周六还有几天
     * (因为从周日算成一周的开始)
     */
    if(0 != weekdays)
      surplusDay = 6 - weekdays;

    //获得上课所用多少周,取整
    weekCount = (COURSENUM-count) / HAVEClass_OF_WEEK;

    //获得取整后剩下的课程数
    surplusClass =(COURSENUM-count) - (weekCount * HAVEClass_OF_WEEK) ;

   /*
    * 计算取整周后剩下的课程数. (从每周日开始算起)
    * 若不剩课程,则日期-1 (因为取整后的最后一天为周六,不上课),
    * 则计算周五的日期 
    * 若还剩1节课,必定是 周一上课,所以天数+2天
    * 若还剩2节课,则 周一 周二 上课,所以天数+3天
    * 若还剩3节课,则 周一 周二 周五上课,所以天数+6天
   */

    switch (surplusClass){
    case 0:
      surplusDay = surplusDay - 1;
      break;
    case 1:
      surplusDay += 2;
      break;
    case 2:
      surplusDay += 3;
      break;
    case 5:
      surplusDay += 6;
      break;
    }

    //要上课所用的总天数
    total = surplusDay + (weekCount * 7) ;

    //设置课程完毕当天的日期
    calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+total);

    //假如取整后所剩下的课程数为零,直接就是取周五的日期
    System.out.println("学完这个课程的时间跨度是"+total+"天 , 上完课程后的日期: "+calendar.get(Calendar.YEAR)+"-"+(calendar.get(Calendar.MONTH)+1)+"-"+calendar.get(Calendar.DATE)+" 星期:"+(calendar.get(Calendar.DAY_OF_WEEK)-1));

  }


  以上是“Java日期操作实例[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 利用Javascript实现网页水印(非图片水印)
  • Java开辟环境的搭建
  • Ubuntu java安装与配置
  • 办理Ubuntu 10.04 Firefox3.6 Java浏览器插件不工作的问
  • Ubuntu重装后Java环境的设置
  • Sun Java进入Ubuntu 10.10软件中央
  • Ubuntu 10.10配置Java开辟环境
  • 在Ubuntu 10.10中配置Java环境变量的办法
  • Ubuntu下Java环境的搭建
  • Ubuntu 10.04 下安装 Java, JRE
  • Ubuntu 10.04下的搭建SUN JAVA开辟环境
  • Ubuntu 12.04安装java7
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .