我正在尝试创建所有对象的列表,但我不断收到“无法解析‘customMob’中的方法‘push’”错误。
这里,错误出现在最后一行。我想创建一个空数组,里面什么都没有,然后将 ENTITY_BOB 添加到数组中,但出现错误。
public class customMobList {
public static customMob[] mobList = new customMob[0];
public static customMob ENTITY_BOB = new customMob("Bob", 10000, 999, false);
public static void addMob() {
mobList.push(ENTITY_BOB); <-- error here
}
}
我尝试编写一个不太复杂的代码块,看看是否出现相同的错误:
public static int[] test = new int[0];
public static void addInt() {
test.push(1); <-- error here
}
我收到错误“无法解析方法‘推送’”
Java 区分了 arrays 和 lists。数组是一组有序的元素,其大小无法更改。因此,您无法通过
push
或 add
等方法添加到其中。另一方面,List
是一种数据类型,允许您在初始化后添加/删除元素。 (有关更多详细信息,请参阅 https://www.geeksforgeeks.org/array-vs-arraylist-in-java/#)。
您的代码使用数组,而实际上您可能需要一个
List
。 Java 中最常用的 List 实现是 ArrayList
数据结构(有关更多详细信息,请参阅 https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList.html)。
如果您要使用 ArrayList,您的
mobList
声明将如下所示:
public static ArrayList<customMob> mobList = new ArrayList<>();
您可以使用
mobList
方法向 add
添加元素(不像其他语言那样使用 push
):
mobList.add(ENTITY_BOB);