定义一个时间类,其中有三个私有整型成员时hour分minute秒second,定义成员方法分别对时、分、秒进行加减运算,保证运算后时间为真实时间

定义一个时间类,其中有三个私有整型成员时hour分minute秒second,定义构造方法以方便创建对象时初始化成员变量。 再定义diaplay方法用于将时间信息打印出来。定义成员方法分别对时、分、秒进行加减运算,保证运算后时间为真实时间

完整代码如下:

public class TimeDemo {
	private int hour;      //定义小时
	private int minute;    //定义分钟
	private int second;    //定义秒

	public static void main(String[] args) {
		TimeDemo timeDemo = new TimeDemo(17, 00, 20);    //定义初始时间
		timeDemo.display();
		timeDemo.addSecond(120);
		timeDemo.addMinute(120);
		timeDemo.addHour(48);
		timeDemo.subSecond(100);
		timeDemo.subMinute(100);
		timeDemo.subHour(100);
		timeDemo.display();        //打印修改后的时间
	}

	public TimeDemo(int x, int y, int z) {
		this.hour = x;
		this.minute = y;
		this.second = z;
	}

	public void display() {
		while (second > 59 || second < 0 || minute > 59 || minute < 0 || hour > 23 || hour < 0) {
			if (second > 59) {        //判断当秒为60时,分要进一位,当分为60时,小时要进一位,当小时为24时,小时要归0
				second -= 60;         
				minute++;
			}
			if (minute > 59) {
				minute -= 60;
				hour++;
			}
			if (hour > 23) {
				hour -= 24;
			}
			if (second < 0) {        //判断当秒为负数时,向分借位,当分为负数时,向小时借位,当小时为负数时,不断加24直到为正数
				second += 60;
				minute--;
			}
			if (minute < 0) {
				minute += 60;
				hour--;
			}
			if (hour < 0) {
				hour += 24;
			}
		}
		System.out.println("the time is " + this.hour + ":" + this.minute + ":" + this.second);
	}

	public void addHour(int hou) {    //加小时
		this.hour = this.hour + hou;
	}

	public void addSecond(int sec) {    //加秒
		this.second = this.second + sec;
	}

	public void addMinute(int min) {    //加分钟
		this.minute = this.minute + min;
	}

	public void subHour(int hou) {    //减小时
		this.hour = this.hour - hou;
	}

	public void subMinute(int min) {    //减分钟
		this.minute = this.minute - min;
	}

	public void subSecond(int sec) {    //减秒
		this.second = this.second - sec;
	}
}
  • 5
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值