有个订单系统每天24小时自动接受订单,但是如果订单在22点-24点出现,系统需要就要自动把他们算作第2天的订单。
系统只是关心到天,不关心小时,分钟,秒。我可以这样做:MyDate calDate(MyDate date){
if(date.getHour>22){
  date.day++;//As tomorrow
}
return date;
}better solution?

解决方案 »

  1.   

    订单信息里面,生成订单、接受订单和处理订单,应该是三个不同的时间参数吧?
    有的系统,将接受和处理两个时间合并成一个,叫做受理时间。楼主的方法有个明显的Bug,就是,月末最后一天出现这种情况,应该推迟到下月一日才行。我推荐使用Calendar类,进行时间的推移。
      

  2.   

    考虑的全面,说不定data在其他地方有处理呢。。
      

  3.   

    我的一个同事这样做:
    MyDate calDate(MyDate date){
     
      date.day+=2;//Cool!  return date;
    }
      

  4.   

    我的一个同事这样做:Java code    MyDate calDate(MyDate date){ 
       date.hour+=2;//Cool! 
    return date; }