2014-02-01 2 views
-1

Это мой первый пост здесь, когда переполнение стека, надеюсь, я буду тратить гораздо больше времени здесь! Я новичок в java, и сейчас я изучаю, как программировать методы в свой код. При компиляции этого кода следующие сообщения об ошибках возвращаются:Java возвращает проблему 4 раза «класс, интерфейс или enum expected»

java: dir/src/main.java:24: class, interface, or enum expected 
java: dir/src/main.java:26: class, interface, or enum expected 
java: dir/src/main.java:27: class, interface, or enum expected 
java: dir/src/main.java:28: class, interface, or enum expected 

Я попытался изменить общественные статический только статическими и только общественность, но это возвращает либо ту же ошибку или больше ошибок. Я пытаюсь понять логику языка.

Вот исходный код:

public class task_4 { 
    public static void main(String[] args) { 
     double cent = 10; 
     double fahr = 10; 

     double centToFahrResult = centToFahr(10); 
     double fahrToCentResult = fahrToCent(20); 

     System.out.println(fahrToCentResult + " " + centToFahrResult); 
    } 


     public static double fahrToCent(double fahr) { 
      double cent; 
      cent = ((fahr - 32)/1.8); 
      return cent; 
     } 
    } 


     public static double centToFahr(double cent) { 
      double fahr; 
      fahr = ((cent * 1.8) + 32); 
      return fahr; 
     } 
    } 


} 

Я настойчивая с языком, так что я надеюсь, что вы будете в состоянии помочь. Спасибо за ваши ответы заранее.

+9

Проверьте брекеты ... Использование IDE. –

+0

Я использую IDE, но этот ответ мне очень помог! Спасибо огромное! – bradleyduncan

+0

Открытие заключалось в том, что когда компилятор возвращает ошибку «класс, интерфейс или enum expected», проверьте скобки. – bradleyduncan

ответ

1

Два брекетов слишком много - см редактирует ниже:

public class task_4 { 
    public static void main(String[] args) { 
     double cent = 10; 
     double fahr = 10; 

     double centToFahrResult = centToFahr(10); 
     double fahrToCentResult = fahrToCent(20); 

     System.out.println(fahrToCentResult + " " + centToFahrResult); 
    } 

    public static double fahrToCent(double fahr) { 
     double cent; 
     cent = ((fahr - 32)/1.8); 
     return cent; 
    } 
//} <<<< this one should not be there 

    public static double centToFahr(double cent) { 
     double fahr; 
     fahr = ((cent * 1.8) + 32); 
     return fahr; 
    } 
//} <<<< nor this one 
} 
+1

Большое вам спасибо. Java - это то, чему я учусь любить, но на данный момент мы находимся в зоне друзей! – bradleyduncan

+0

@bradleyduncan Я тебя слышу. Как было указано, хорошая среда IDE (интегрированная среда разработки) поможет вам разобраться в этих вещах - она ​​может обеспечить согласованное отступы, полные имена переменных, даже выделить синтаксические ошибки. Определенно стоит иметь (особенно потому, что многие бесплатные). – Floris

+0

В настоящее время я использую IntelliJ IDEA. Это то, что вы бы порекомендовали? – bradleyduncan

1

У вас есть более закрывающиеся фигурные скобки, чем открывающие.

Кроме того, ваше имя класса должно начинаться с прописной буквы и не должно иметь подчеркивания.

Проверьте java naming conventions и, возможно, используйте IDE, чтобы помочь вам проверить скобки.

1

Try были несоответствием скобки я исправил код попробуйте

public class task_4 { 
     public static void main(String[] args) { 
      double cent = 10; 
      double fahr = 10; 

      double centToFahrResult = centToFahr(10); 
      double fahrToCentResult = fahrToCent(20); 

      System.out.println(fahrToCentResult + " " + centToFahrResult); 
     } 


      public static double fahrToCent(double fahr) { 
       double cent; 
       cent = ((fahr - 32)/1.8); 
       return cent; 
      } 



      public static double centToFahr(double cent) { 
       double fahr; 
       fahr = ((cent * 1.8) + 32); 
       return fahr; 


    } 
    } 
+0

@bradleyduncan это работает для вас мой друг – Tenacious

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