2009年6月10日水曜日

AWT 動的配列

動的配列
 一般的に複数のオブジェクトを管理する専用のクラスとして「ArrayList」が使用される

要素編集用のメソッド
・インスタンスの追加

ArrayList.add(Object);
引数がインスタンスのみの場合は最後に追加


ArrayList.add(int値,Object);
int値の位置にインスタンスを追加


・要素を削除

ArrayList.remove(int値);
指定したインデックス番号の要素を削除


ArrayList.removeRange(int値,int値);
指定したインデックス番号の範囲内の要素を削除


ArrayList.clear();
全要素を削除


・要素を取得

Object = ArrayList.get(int値);
引数指定したインデックス番号の要素を取得


・要素数の取得

int値 = ArrayList.size();
引数指定したインデックス番号の要素を取得


・全要素の取得

Object配列 = ArrayList.toArray();
インスタンスにある全要素を要素にもつObject配列を返す



例.

public class ArrayApp extends Frame{

ArrayList data;

public static void main(String[] args) {
new ArrayApp();
}

public ArrayApp(){
this.setSize(300,200);
data = new ArrayList();
this.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent ev){
clicked(ev);
}
});
}

public void clicked(MouseEvent ev){
Point p = ev.getPoint();
data.add(p);
this.repaint();
}

public void paint(Graphics g){
g.setColor(Color.red);
int n = data.size();
int[] x = new int[n];
int[] y = new int[n];
for(int i = 0 ; i < n ; i++){
Point p = (Point)data.get(i);
x[i] = p.x;
y[i] = p.y;
}
g.drawPolyline(x, y, n);
}
}

0 件のコメント:

コメントを投稿