试图在java中调用函数,抱怨“.class expected”。

时间:2012-02-07 16:35:23

标签: java class function call

新手程序员在这里。试图学习静态方法和递归。不知道为什么每当我尝试调用“drawCircle()”时我都会出现“.class expected”错误。我的代码如下。帮助PLZ?谢谢!

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 个答案:

答案 0 :(得分:5)

应该是:

drawCircle(N, r, c);

您只需通过c。你不需要再次表明它是一个数组。

答案 1 :(得分:1)

你的问题出在以下几个方面:

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

他们应该是:

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

您不需要再次将其定义为数组,您可以在参数中执行此操作。只需将参数传递给函数。

答案 2 :(得分:0)

删除'center'和'c:

中的大括号
drawCircle(numberOfTimes, radius, center);

drawCircle(N, r, c);