11.5 显示对象
如果创建一个 Time 对象,并用 println 显示:
public static void main(String[] args) {Time time = new Time(11, 59, 59.9);System.out.println(time);}
输出将类似于下面这样:
Time@80cc7c0
当要求显示对象类型的值时,Java 显示类型名和对象的地址(十六进制表示)。如果需要跟踪各个对象,这种地址在调试中很有用。
要想以对用户更有意义的方式来显示 Time 对象,可编写一个显示小时、分钟和秒的方法。为此,可以 4.6 节中的方法 printTime 为基础,编写下面的方法:
public static void printTime(Time t) {System.out.print(t.hour);System.out.print(":");System.out.println(t.minute);System.out.print(":");System.out.println(t.second);}
如果用前一节的 time 对象来调用这个方法,输出将为 11:59:59.9。为让这个方法的代码更简洁,可用 printf:
public static void printTime(Time t) {System.out.printf("%02d:%02d:%04.1f\n",t.hour, t.minute, t.second);}
需要提醒你的是,整数需要使用格式说明符 %d,浮点数需要使用格式说明符 %f。选项 02 表示总共两位,如果不够就在前面添加零;选项 04.1 表示整数部分 4 位、小数部分 1 位,如果不够就在前面添加零。
