我的程序无效,错误仅在我运行程序后出现。感谢您的帮助。
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());
}
}
答案 0 :(得分:3)
String.format("%02d:","%02d:", "%02d:", hour, minute, second);
这是错误的。它应该是:
String.format("%02d:%02d:%02d", hour, minute, second);
String.format
将一个格式字符串和任意数量的对象格式化为该字符串。你拥有的是三个格式字符串和三个要格式化的对象。
但你应该像Scary Wombat建议的那样尝试SimpleDateFormat。