Пытаясь вызвать функцию в Java, жалуется ".class Ожидается". - PullRequest
0 голосов
/ 07 февраля 2012

Начинающий программист здесь.пытаясь освоить статические методы и рекурсию.Не знаю, почему я получаю ошибку «.class Ожидается» всякий раз, когда я пытаюсь вызвать «drawCircle ()».Мой код ниже.Помогите плз?Спасибо!

public class Drawliin
{
    public static void drawCircle(int numberOfTimes, double radius, double center[])
    {
        int rep = 1;
        if (rep == 1)
        {
            StdDraw.circle(center[0], center[1], radius);
            rep++;
        }
        else if (rep <= numberOfTimes)
            {
            StdDraw.circle(center[0 + radius], center[1], radius);
            StdDraw.circle(center[0 - radius], center[1], radius);
            StdDraw.circle(center[0], center[1 + radius], radius);
            StdDraw.circle(center[0], center[1 - radius], radius);
            rep++;
            drawCircle(numberOfTimes, radius, center[]);
            }
        }

    public static void main(String[] args)
    {
        int N = Integer.parseInt(args[0]);
        double r = Double.parseDouble(args[1]);
        StdDraw.setXscale(-10, 10);
        StdDraw.setYscale(-10, 10);
        double c[] = new double[2];
        drawCircle(N, r, c[]);
    }
}

Ответы [ 3 ]

5 голосов
/ 07 февраля 2012

Должно быть:

drawCircle(N, r, c);

Вы просто передаете c. Вам не нужно указывать, что это массив снова.

1 голос
/ 07 февраля 2012

Ваша проблема в следующих строках:

drawCircle(N, r, c[]);
drawCircle(numberOfTimes, radius, center[]);

они должны быть:

drawCircle(N, r, c);
drawCircle(numberOfTimes, radius, center);

Вам не нужно снова определять его как массив, вы сделали это впараметры.Просто передайте аргументы функции.

0 голосов
/ 07 февраля 2012

Снять скобки в «центре» и «c:

drawCircle(numberOfTimes, radius, center);

drawCircle(N, r, c);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...