Eclipse抱怨遵循String.format的用法

时间:2014-05-31 15:12:23

标签: java string format string.format

该程序由以下两个类组成,应该打印时间 在类Melons内,Eclipse在String.format方法下给出了一个错误,我不明白为什么

public class Melons {

    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<24) ? s : 0);
    }

    public String toString()
    {
        // Problem here
        return String.format("%d:%02d:%02d %s", 
                             ((hour==0||hour==12) ? 12 : hour%12), 
                             minute,
                             second,
                             (hour<12 ? "AM" : "PM"));          
    } 
 }

class Apples
{
    public static void main(String args[])
    {   
        Melons melonsObject = new Melons();
        System.out.println(melonsObject.toString());
        melonsObject.setTime(13, 35, 9);
        System.out.println(melonsObject.toString());
    }   
}

1 个答案:

答案 0 :(得分:2)

自Java 1.5以来,

format一直是String的成员方法。确保您使用的是此版本或更高版本,并且您的类路径上没有其他String课程。