2015-12-10 55 views
-1

我的程序不能正常工作,而且錯誤只在我運行該程序後才顯示出來。感謝您的幫助提前。Java軍事時間程序不能正常工作

public class Time { 
    private int hour; 
    private int minute; 
    private int second; 

    public void setTime(int h, int m, int s) 
    { 
     hour = ((h>=0 && h<24) ? h : 0); 
     minute = ((m>=0 && m<60) ? m : 0); 
     second= ((s>=0 && s<60) ? s : 0); 
    } 

    public String toMilitary() 
    { 
     return String.format("%02d:","%02d:", "%02d:", hour, minute, second); 
    } 
    public static void main(String[] args) {  
    }  
} 

public class Time2 { 
    public static void main(String[] args) { 
     Time TimeObject= new Time(); 
     System.out.println(TimeObject.toMilitary()); 
     TimeObject.setTime(13,27,6); 
     System.out.println(TimeObject.toMilitary());  
    } 
} 
+1

你會得到什麼錯誤?你不應該需要2個主要功能... – OscuroAA

+0

@OscuroAA好的,謝謝我將它合併成一個主要功能。 – user5657150

+0

考慮使用'SimpleDateFormat' –

回答

3
String.format("%02d:","%02d:", "%02d:", hour, minute, second); 

這是不對的。它應該是:

String.format("%02d:%02d:%02d", hour, minute, second); 

String.format需要一個格式字符串和對象的任何量格式化成字符串。你有三個格式字符串和三個對象格式化到它。

但是你應該嘗試一下SimpleDateFormat恐怖袋熊建議。

+0

現在我明白我做錯了什麼。非常感謝。 – user5657150