在Java中返回com.badlogic.gdx.utils.Array <>接口

问题描述

我试图声明方法

public Array<Shape2D> getShapes(){
...
}

我得到了编译器错误,即“;”在圆括号之前缺少。并且return内的getShapes语句也带有下划线提示:“无法从void返回类型的方法返回值”。我必须说我是Java的新手,但我认为它可以工作。我不能返回Array 类型吗?

解决方法

在Java中,Array.class没有类型参数。 您可以做的是Shape2D[],它是此特定类型的实际数组。 如果您的编译器发现涉及void返回的问题,则可能是因为Array<Shape2D>不是声明数组的方式。因此,它认为这是一个空类型方法。

在这种情况下,您的代码需要如下所示:

public Shape2D[] getShapes(){
...
}

如果Array.class不是下面提到的那个,则您可能已经导入了其他内容。

提及类别: java.lang.reflect.Array

,

我没有看到方括号,并尝试在其他方法中声明方法。抱歉浪费您的时间。