2015-09-21 5 views
-3

Эй, я получаю сообщение об ошибке, что статистические данные, которые это нелегальный начало типа в начале цикла в то время:в то время как петля незаконное начало проблем типа

public class hello { 

    public static void main (String [] arg) { 
     int sum1=sum(7, 13); 
    } 

    public static int sum(int x, int y) { 
     int z=0; 
    } 

    while (y > 0) { 
     z = z + x; 
     y--; 
    } 

    return (z) 
} 
} 
+0

Вы не можете поместить 'while' петлю вне тела метода, как это. Получите привычку отступать от своего кода правильно, и эти виды ошибок ** намного легче увидеть. – azurefrog

+0

У вас есть лишняя фигурная скобка (}) после строки 'int z = 0;' И поскольку Реймеус упомянул о том, что ваш код правильно, поэтому эти ошибки можно легко захватить. –

+0

Чтобы сделать вашу жизнь проще, используйте IDE. Netbeans/Eclipse/.... –

ответ

1

Снимите скобку после int z = 0 и добавить полу- двоеточие после return (z).

Как говорит chenchuk, multiply будет более правильным названием для метода, поэтому я пошел дальше и изменил это. Я также добавил предложение там, в комментарии только внутри вашего цикла while.

Как это:

public class Hello { 

    public static void main(String[] arg) { 
     int sum1 = multiply(7, 13); 
    } 

    public static int multiply(int x, int y) { 
     int z = 0; 

     while (y > 0) { 
      // You can say z += x; here, think of it as shorthand 
      z = z + x; 
      y--; 
     } 

     return z; 
    } 

} 
+0

Красивый код с отступом ... также вы меняете «привет» на «Hello». я бы предложил изменить имя метода от «sum» до «mul» (умножить) – chenchuk