《面向对象程序设计——Java语言》-(浙大翁凯)第二周编程题

mooc《面向对象程序设计——Java语言》-(浙大翁凯)第二周编程题这里写自定义目录标题

作业


public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		java.util.Scanner in = new java.util.Scanner(System.in);

		Clock clock = new Clock(in.nextInt(), in.nextInt(), in.nextInt());

		clock.tick();

		System.out.println(clock);

		in.close();
	}

}

class Display{
	public  int value = 0;
	private int limit = 0;
	
	public Display(int limit)
	{
		this.limit  = limit;
	}
	
	public  void increase()
	{
		value++;
		if( value == limit )
		{
			value =0;
		}
	}
	public int getValue()
	{
		return value;
	}

}

class Clock {
	private Display hour = new Display(24);
	private Display minute = new Display(60);
	private Display second = new Display(60);
	
	// 用hour, minute和second初始化时间。
	public Clock(int hour, int minute, int second)
	{
		this.hour.value = hour;
		this.minute.value = minute;
		this.second.value = second;
	}
	
	//“嘀嗒”一下,时间走1秒。
	public void tick()
	{
		second.increase();
		if(second.getValue()==0)
		{
			minute.increase();
			if(minute.getValue()==0)
			{
				hour.increase();
			}
		}
	}
	//  返回一个String的值,以“hh:mm:ss“的形式表示当前时间。
	//	把 int 型数据转换成 String 型
	public String toString()
	{
		String time=new String();
		//String.format 是课件中提供的函数
		time=String.format("%02d:%02d:%02d", hour.getValue(),minute.getValue(),second.getValue());
		return time;
	}
}

版权声明:本文为sheguangfei原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。