Java練習 SDUT - 2669_2-2 Time類的定義
阿新 • • 發佈:2018-11-06
2-2 Time類的定義
Time Limit: 1000 ms Memory Limit: 65536 KiB
Problem Description
通過本題目的練習可以掌握類與物件的定義;
設計一個時間類Time,私有資料成員有hour(時)、minute(分)、second(秒);
公有成員函式有:setHour(int)設定資料成員hour的值(採用12小時制),非法的輸入預設為12;setMinue(int)設定資料成員minute的值,非法輸入預設為0;setSecond(int)設定資料成員second的值,非法輸入預設為0;setTime(int,int,int)設定時、分、秒三個資料成員的值; showTime()顯示時間物件的值。
在主函式main()中呼叫相應成員函式,使得時間物件的值能從鍵盤接收,並正確顯示。
提示:時、分、秒均按2位數值形式顯示 。
Input
輸入3個整數,用一個空格間隔
Output
輸出 時、分、秒的值,中間用“:”間隔
Sample Input
10 11 12
Sample Output
10:11:12
Hint
輸入
58 23 85
輸出
12:23:00
按照題目要求建立類,注意異常判斷
import java.util.*; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); Time a = new Time(); a.setTime(cin.nextInt(), cin.nextInt(), cin.nextInt()); a.show(); cin.close(); } } class Time { private int hour,minute,second; public void setHour(int x) { hour = x; if(hour>12||hour<12) hour = 12; } public void setMinue(int x) { minute = x; if(minute>=60||minute<0) minute = 0; } public void setSecond(int x) { second = x; if(second>=60||second<0) second = 0; } public void setTime(int a,int b,int c) { setHour(a); setMinue(b); setSecond(c); } public void show() { System.out.printf("%02d:%02d:%02d\n",hour,minute,second); } }