سلام دوستان ,
من تازه وارى دنياى جاوا شدم يك سوالى برام پيش اومده اگه كسي كمكم كنه خيلي ممنون ميشم :
public class Time {
private int hour; // 0 - 23
private int minute; // 0 - 59
private int second; // 0 - 59
// constructor
public Time(int h, int m, int s) {
setHour(h);
setMinute(m);
setSecond(s);
} // end constructor
public void setHour(int h){hour = ( h >= 0 && h < 24 ) ? h : 0;}
public int getHour(){return hour;}
public void setMinute(int m){minute = ( m >= 0 && m < 60 ) ? m : 0;}
public int getMinute(){return minute;}
public void setSecond(int s){second = ( s >= 0 && s < 60 ) ? s : 0;}
public int getSecond(){return second;}
// convert to String in universal-time format (HH:MM:SS)
public String toUniversalString() {
return String.format("%02d:%02d:%02d", getHour(), getMinute(), getSecond());
} // end method toUniversalString
// convert to String in standard-time format (H:MM:SS AM or PM)
public String toString() {
return String.format("%d:%02d:%02d %s",
( ( getHour() == 0 || getHour() == 12 ) ? 12 : getHour() % 12 ),
getMinute(), getSecond(), ( getHour() < 12 ? "AM" : "PM" ) );
} // end method toString
} // end class Time
public class TimeTest {
public static void main(String[] args) {
Time t1 = new Time(13, 7, 8);
System.out.print("1st UT: ");
System.out.println( t1.toUniversalString() );
System.out.print("1st ST: ");
System.out.println( t1.toString() );
Time t2 = new Time(11, 59, 34);
System.out.print("2nd UT: ");
System.out.println(t2.toUniversalString());
System.out.print("2nd ST: ");
System.out.println(t2.toString());
Time t3 = new Time(90, 80, 70);
System.out.print("3rd UT: ");
System.out.println(t3.toUniversalString());
System.out.print("3rd ST: ");
System.out.println(t3.toString());
System.out.println(t3); // ???
} // end main method
}
تو برنامه اصلى چرا وقتى t3 و اجرا ميكنيم (يه خط مونده با اخر ) چرا جواب ميشه AM12:00:00?!!!
ممنون ميشم راهنماييم كنيد