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

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

这时,时分秒都更新了

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

时间: 2024-10-16 12:55:33

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

VisualSVN设置提交时必须输入日志信息

VisualSVN设置提交时必须输入日志信息 1.svn提交时强制输入提交信息 为了阻止SVN提交空日志信息和垃圾文件可以在SVN服务器端强制必须填写日志信息,这时需用到pre-commit钩子脚本. 2.设置方法 (1)打开VisualSVN管理控制台 (2)右键你要设置的代码仓库 (3)所有任务->Manage Hooks…… (4)编辑“Pre-commit hook",输入如下内容: @echo off :: :: Stops commits that have empty log

java中检测-在运行时指定对象是否是特定类的一个实例---关键字 instanceof

java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例.instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例. if(request instanceof HttpServletRequest){ System.out.println("-------------"); } 原文地址:https://www.cnblogs.com/czlovezmt/p/9728353.html

虚基类练习:动物(利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别),陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal,属性增加了游泳速度)和两栖动物(amp_animal)。)

Description 长期的物种进化使两栖动物既能活跃在陆地上,又能游动于水中.利用虚基类建立一个类的多重继承,包括动物(animal,属性有体长,体重和性别),陆生动物(ter_animal,属性增加了奔跑速度),水生动物(aqu_animal,属性增加了游泳速度)和两栖动物(amp_animal).其中两栖动物保留了陆生动物和水生动物的属性. Input 两栖动物的体长,体重,性别,游泳速度,奔跑速度(running_speed) Output 初始化的两栖动物的体长,体重,性别,游泳速度

使用File类新建一个文本文件

新建一个a.txt的文本文件 1 import java.io.*; 2 3 public class NewFile{ 4 5 public static void main(String[] args) { 6 File f = new File("a.txt"); 7 try { 8 if(!f.exists()) 9 f.createNewFile(); 10 } catch (IOException e) { 11 12 e.printStackTrace(); 13 } 1

解决新建短信时,输入“+86”,然后输入联系人名字“1”,按删除键之后,联系人变为“1”,删除操作为达到预期结果

1.保存一个"+8618621058121"号码的联系人"Jane" 2.保存一个号码是"42266888"的联系人"1" 3.信息-新建信息-在联系人输入框中输入"+86"-输入"1"-点击删除按钮 [测试结果]联系人变为1 [预期结果]联系人应为"Jane" 与问题相关的类为Mms下的ComposeMessageActivity,相关控件为在initRecipie

JS中用apply、bind实现为函数或者类传入动态个数的参数

为纪念10年没写blog,第一篇博文就以这样一个有趣的窍门开始吧 -___- 在ES5中,当我们调用一个函数时,如果要传入的参数是根据其他函数或条件判断生成的,也就是说不确定会传入多少个参数时,在不改变原函数的情况下该如何办呢? (当然了,能避免此文所述情况发生就尽量避免,比如将参数改为object或array等等) 大部分人可能知道用apply能完美解决这个问题: apply与call一样会将第一个参数作为函数的调用对象,即改写了调用函数内的this指针为第一个参数,如果不是对象的方法,可以不

Java Date类和Calendar类的一个控制台打印日期的小程序

Java Date类和Calendar类的一个打印日期的小程序,可以直接用. package com.boy.Idate.calendar; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * 控制台可视化日历 * @author 田硕 */ public class VisualCalendar {

当一个非静态的成员是常量或是引用类型时,需要怎么样初始化它们

const int a ;//此句代码是错误的,因为const修饰的a必须要在定义的时候初始化. int &a;//同理,也是错的,在定义的时候必须要初始化,其他类型的数据也是一样. 那么如果一个类的成员有非静态const类型,或者引用类型时,该怎么初始化呢? #include<iostream>using namespace std;class A {  public: const int a;  A (int t){    a=t;   }};int main(){  A b(3)

第二次实验判断成绩等级。 给定一百分制成绩,要求输出成绩的等级。90以上为A,80-89为B,70-79为C,60-69为D,60分以下为E,输入大于100或小于0时输出“输入数据错误”。 分别用if和用switch语句实现判断成绩等级。 给定一百分制成绩,要求输出成绩的等级。90以上为A,80-89为B,70-79为C,60-69为D,60分以下为E,输入大于100或小于0时输出“输入数据错误”

一:实验内容:1:判断成绩等级. 给定一百分制成绩,要求输出成绩的等级.90以上为A,80-89为B,70-79为C,60-69为D,60分以下为E,输入大于100或小于0时输出“输入数据错误”. 分别用if和用switch语句实现 #include <stdio.h> int main() { int grade; scanf("%d",&grade); if(grade>100||grade<0) { printf("数据错误")