📄 clock.java
字号:
//class Clock
public class Clock
{
private int hr; //store hours
private int min; //store minutes
private int sec; //store seconds
//Constructor with parameters, to set the time
//The time is set according to the parameters
//Postcondition: hr = hours; min = minutes; sec = seconds
public Clock(int hours, int minutes, int seconds)
{
setTime(hours, minutes, seconds);
}
//Default constructor
//Postcondition: hr = 0; min = 0; sec = 0
public Clock()
{
setTime(0, 0, 0);
}
//Method to set the time
//The time is set according to the parameters
//Postconditions: hr = hours; min = minutes; sec = seconds
public void setTime(int hours, int minutes, int seconds)
{
if(0 <= hours && hours < 24)
hr = hours;
else
hr = 0;
if(0 <= minutes && minutes < 60)
min = minutes;
else
min = 0;
if(0 <= seconds && seconds < 60)
sec = seconds;
else
sec = 0;
}
//Method to return the hours
//Postconditions: the value of hr is returned
public int getHours()
{
return hr;
}
//Method to return the minutes
//Postconditions: the value of min is returned
public int getMinutes()
{
return min;
}
//Method to return the seconds
//Postconditions: the value of sec is returned
public int getSeconds()
{
return sec;
}
//Method to print the time
//Postconditions: Time is printed in the form hh:mm:ss
public void printTime()
{
if(hr < 10)
System.out.print("0");
System.out.print(hr + ":");
if(min < 10)
System.out.print("0");
System.out.print(min + ":");
if(sec < 10)
System.out.print("0");
System.out.print(sec);
}
//Method to increment the time by one second
//Postconditions: The time is incremented by one second
//If the before-increment time is 23:59:59, the time
//is reset to 00:00:00
public void incrementSeconds()
{
sec++;
if(sec > 59)
{
sec = 0;
incrementMinutes(); //increment minutes
}
}
//Method to increment the time by one minute
//Postconditions: The time is incremented by one minute
//If the before-increment time is 23:59:53, the time
//is reset to 00:00:53
public void incrementMinutes()
{
min++;
if(min > 59)
{
min = 0;
incrementHours(); //increment hours
}
}
//Method to increment the time by one hour
//Postconditions: The time is incremented by one hour
//If the before-increment time is 23:45:53, the time
//is reset to 00:45:53
public void incrementHours()
{
hr++;
if(hr > 23)
hr = 0;
}
//Method to compare the two times
//Postconditions: Returns true if this time is equal to
// otherTime; otherwise returns false
public boolean equals(Clock otherClock)
{
return(hr == otherClock.hr
&& min == otherClock.min
&& sec == otherClock.sec);
}
//Method to copy time
//Postcondition: The data members of otherTime are copied
// into the correspoding data members of
// this time.
// hr = otherTime.hr; min = otherTime.min;
// sec = otherTime.sec;
public void makeCopy(Clock otherClock)
{
hr = otherClock.hr;
min = otherClock.min;
sec = otherClock.sec;
}
//Method to return a copy of time
//Postcondition: A copy of the object is created
// and a reference of the copy is returned
public Clock getCopy()
{
Clock temp = new Clock();
temp.hr = hr;
temp.min = min;
temp.sec = sec;
return temp;
}
public String toString()
{
String str = "";
if(hr < 10)
str = "0";
str = str + hr + ":";
if(min < 10)
str = str + "0" ;
str = str + min + ":";
if(sec < 10)
str = str + "0";
str = str + sec;
return str;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -