首页 > 其他 > 详细

time类,传入一个时分秒,输入seconds之后或之前的时分秒

时间:2019-10-15 11:18:00      阅读:72      评论:0      收藏:0      [点我收藏+]
public Time(int hour, int minute, int second) {}
1.首先判断合理性:
hour:不能<0,≥60
minute:不能<0,≥60
second:不能<0,≥60
2.逻辑:
推断seconds之后的时分秒
这里应为while循坏;当seconds特别大,需要执行多次
例如:

 while (other.second >= 60) {//
            other.second -= 60;//61-60=1
            other.minute += 1;
            if (other.minute >= 60) {//不会>60,一般是等于60,因为不可能传入一个≥60的值   
                other.minute = 0;//置0
                other.hour += 1;//小时加1
                if (other.hour >= 24) {//一般不会>24 ,等于24即置0
                    other.hour = 0;
                }
            }
        }

second+=seconds
当second超过最大值,minute+=1
当minute超过最大值,hour+=1

推断seconds之前的时分秒;
1.当seconds<second
second-=seconds
很好处理,时分不变
2.当seconds>second
second=seconds-second
second=60-second;
minute-=1
当minute≤0
hour-=1

这时,时分秒都更新了

time类,传入一个时分秒,输入seconds之后或之前的时分秒

原文:https://blog.51cto.com/14232658/2442414

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!