使用对象元素将对象添加到arraylist

时间:2013-11-03 15:27:51

标签: java arraylist

我正在尝试将对象添加到我的arraylist中,然后我可以实现一些引用该对象元素的方法。我有两个类Balloons和MyPark(都实现其他接口,但这是无关紧要的)。在气球课上有:

public class Balloons implements Balloon {

private int area;
private int position;

public void Balloon(int area, int position) {
    this.area = area;
    this.position = position;
}

@Override
public int getArea() {
    return area;
 }
}

在MyPark中,我创建了我的气球Arraylist:

import java.util.*;
public class MyPark implements Park {

public Balloons balloon = new Balloons;
public ArrayList <Balloon> a = new ArrayList <Balloon>();
public int index;

@Override
public void addBalloon (int barea){
   a.add(new Balloons (barea, index));
}
}

但显然这不是这样做的方法。有什么建议?我还希望能够按区域对列表进行排序......

2 个答案:

答案 0 :(得分:3)

public void Balloon(int area, int position)不是构造函数,它是一个方法 - 大概你希望它是一个构造函数。

要使其成为构造函数,它应该与您的类(Balloons,而不是Balloon)具有相同的名称,并且您应该删除void

public Balloons(int area, int position)

要对列表进行排序,您基本上有两个选项:

答案 1 :(得分:2)

你可以比较你的名单

Collections.sort(SortList, new Comparator<Balloon>(){
            public int compare(Balloon b1, Balloon b2) {
                return b1.area- b2.area;
            }
        });