2016-03-24 4 views
0

Каждый знает, что значит эта ошибка:Методы и обратные задачи

RectangleArea.java:21: error: method getLength in class RectangleArea cannot be applied to given types; 


    length = getLength(); 
      ^
    required: double,Scanner 

    found: no arguments 

    reason: actual and formal argument lists differ in length 

    import java.util.Scanner; 

    public class RectangleArea 
    { 
     public static void main (String [] args) 
     { 
     Scanner keyboard = new Scanner (System.in); 
     double length, // The rectangle's length 
     width,  // The rectangle's width\ 
     area;  // The rectangle's area 
     welcomeBanner(); 
     // Get the rectangle's length from the user. 
     length = getLength(); 
     } 
     static void getLength(double aLength, Scanner aKeyboard) 
     { 
     System.out.print("Enter the rectangle's length: "); 
     aLength = aKeyboard.nextDouble(); 
     System.out.println(""); 
     return aLength; 
     } 
    } 

Как я могу это исправить?

+0

Хорошо посмотрите на параметры 'getLength' ... затем посмотрите на аргументы, которые вы передаете (нет) ... –

+0

вы можете объяснить аргументы? Я как бы потерял там –

+0

Какова цель 'getLength (...)'? Он возвращает значение, которое вы хотите ввести. – Ceelos

ответ

0

getLength - это недействительный метод. Если вы хотите что-то вернуть, вам необходимо заменить void типом данных, double в вашем случае. Вам также необходимо убедиться, что вы передаете правильные типы параметров и правильное количество параметров.

0

Метод getLength():

  1. Он принимает 2 параметра double aLength и Scanner aKeyboard.
  2. Вы назначаете это значение длине, которая равна double, но вы ничего не возвращаете (void) по методу getLength().

Что делать, если вы попробуете это:

static double getLength() 
{ 
    Scanner keyboard = new Scanner (System.in); 
    double aLength; 
    System.out.print("Enter the rectangle's length: "); 
    length = keyboard.nextDouble(); 
    System.out.println(""); 
    return length; 
} 

Кроме того, вы должны удалить переменную keyboard из метода main().

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