2014-05-31 4 views
1

Программа состоит из двух следующих классов и должна печатать время.
В классе Melons Eclipse, дает мне ошибку при методе String.format, и я не понимаю, почему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()); 
    } 
} 
+0

И если вы наведите курсор на подчеркнутую линию, что она говорит? (Почему мы должны сказать вам это?) –

+1

Это похоже на компиляцию для меня. Вы уверены, что это оскорбительный код? – PakkuDon

+0

что вы имеете в виду с оскорбительным кодом? – user3322858

ответ

2

format был метод членом String поскольку Java 1.5. Убедитесь, что вы используете эту версию или больше, и что у вас нет другого класса String в вашем пути к классам.

+0

спасибо, что мне делать, чтобы исправить? – user3322858

+0

вам нужно сообщить нам, в чем проблема: - старая версия Java или другой класс 'String' в classpath? – Reimeus

+0

Что вы имеете в виду в другом классе строк в пути к классам? – user3322858

Смежные вопросы