实现方法add为2D点的ArrayList(int,int)

时间:2013-03-06 18:39:34

标签: java arraylist

我想为以下数据结构创建方法.add(int,int)和ArraYList:

    class CPoint {
    int x;
    int y;
}

以下列方式使用它:

    ArrayList<CPoint> ar = new ArrayList<CPoint>();
    ar.add(100,100);

我知道我必须从这样的事情开始:

class CArrayListPoints extends ArrayList<CPoint>{
}

但不确定如何。请帮我解决这个问题。 编辑:实现&lt; - extends

3 个答案:

答案 0 :(得分:3)

你可以创建一个这样的类:

class CArrayListPoints extends ArrayList<CPoint>{

   public void add(int x, int y){
      super.add(new CPoint(x, y);
    }

}

使用这种方式:

CArrayListPoints list = new CArrayListPoint();
list.add(10, 10);

答案 1 :(得分:1)

可能你看起来像这样

class CPoint {
        int x;
        int y;
    }

class CArrayListPoints extends ArrayList<CPoint>{
        public void add(int x, int y){
            CPoint p = new CPoint();
            p.x = x;
            p.y = y;

            add(p);
        }
}

答案 2 :(得分:0)

如果你想要一个包含两个值的列表,你需要HashMap http://docs.oracle.com/javase/6/docs/api/java/util/HashMap.html。如果你坚持使用Arraylist,只需要创建一个add(int a,int b)方法,让每个CPoint都有一个包含x值的字段。