java - 我的 ArrayList 中的 .add 有什么问题?

标签 java eclipse arraylist

我目前正在用java做一个简单的游戏,代表DOS游戏Gorillas.bas .我正在创建一个数组列表来存储各个建筑物对碰撞检查和诸如此类的事情所做的事情,但是无论我如何去做,Eclipse 都会给我一个错误。这是我为 arraylist 准备的。

ArrayList<Rectangle> Buildings = new ArrayList<Rectangle>();
Point build1 = new Point(75,30);
Rectangle building1 = new Rectangle(build1, BUILDING_WIDTH, 150);
Buildings.add(Rectangle building1);

错误在 .add() 方法上,它告诉我该方法需要一个正文而不是分号。这是什么意思? eclipse 是否无法识别 .add()

编辑:根据要求围绕它的一些代码;似乎没有任何语法错误。

public double bananaX = 85; 
public double bananaY = 292;
public double bananaDX = 1; 
public double bananaDY = 1;
public double power = 0;
public double direction = 0;
public double rise;
public double run;
Point start = new Point(0,0);
Point finish = new Point(0,0);`

ArrayList<Rectangle> buildings = new ArrayList<Rectangle>();
Point build1 = new Point(75,350);
Point build2 = new Point(225, 250);
Point build3 = new Point(325, 200);
Point build4 = new Point(425, 200);
Point build5 = new Point(525, 250);
Point build6 = new Point(675, 350);
Rectangle building1 = new Rectangle(build1, BUILDING_WIDTH, 150);
buildings.add(building1);


public void power(Point start, Point finish)
{
    int power = 0;
    power = (int)start.distanceTo(finish);


}

public void direction(Point start, Point finish)
{
    double direction = 0;
    rise = (finish.y - start.y)*-1;
    run = (finish.x - start.x)*-1;
    direction = rise/run;
    bananaDX = run/10;
    bananaDY = (rise/10);
    System.out.printf("rise = %f\nrun = %f\ndirection = %f\n\n ",rise, run, direction);

}

最佳答案

你只需要:

Buildings.add(building1);

因为 building1 已经是一个矩形。您已经在其上方创建了 Rectangle 对象,因此您只需使用变量本身,因为它的类型正确。

编辑:您可能还应该重命名 Buildings buildings 以避免任何混淆。当你用大写字母命名一个变量时,它看起来像一个类型而不是一个变量。

Edit2:根据您提供的代码,您需要在某种方法中包含 buildings.add(building1);。如果你想在开始时添加它,你应该创建一个在开始时调用的初始化方法。

关于java - 我的 ArrayList 中的 .add 有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26245054/

相关文章:

Java - 解释对象文件

java - 使用冒泡排序与 fork/join 池并行对 Arraylist 进行排序

java - 将 string[] 拆分为 ArrayList 并返回值

Java无法正确计算点到线的距离

java - 为什么我的 Android 应用程序会关闭?

android - 为什么我不能将 google play 服务导入到 eclipse 中?

android - Eclipse Juno,永无止境的 Android 工具包更新

Java WebDriver 复制文本问题

java - 为什么 InputStream 没有完全填满数组?

java - Swing/Java : How to use the getText and setText string properly