2017-05-31 16 views
-1

メソッドを2回書く必要があります。一度Arrayを使用し、一度リンクリストを使用します。 多角形を描画することです。ポイントは、配列またはリンクされたリストに保存されます。Arrayを使用して順序付きリストを使用する方法を書き換えます

今、私はちょうどのみリンクリストを使用して同じ方法を書くのですか分からない

public void draw() { 
     Drawing.graphics.setColor(this.color); 
     int[]xPoints = new int[this.points.size()]; 
     int[]yPoints = new int[this.points.size()]; 
     for(int i = 0; i < this.points.size();i++){ 
      Position p = this.points.get(i); 
      xPoints[i] = p.getX()+this.origin.getX(); 
      yPoints[i] = p.getY()+this.origin.getY(); 
     } 
     Drawing.graphics.fillPolygon(xPoints,yPoints,this.points.size()); 

    } 

私はすでに最初の部分でした(配列を、それが完璧に動作します)。 これまでに私が来たところです。それほどではない.....

public void draw() { 
     Drawing.graphics.setColor(this.color); 
     PolygonList list = new PolygonList(this.points.size(),this.points.size(), this.color); 
      Drawing.graphics.fillPolygon(list.origin.x,list.origin.y,this.points.size());  
    } 

ありがとうございました!

+0

'points.size()'と 'points.get(i)を' –

+0

が常に第二に、あなたの試みを表示してください以上のような配列よりもリストのように聞こえますどのように悪いことが起こっても問題は解決しません。これを行うと質問の質が100倍になります。 –

+0

なぜ 'LinkedList'で、なぜArrayListではないのですか? – SomeDude

答えて

1

コードをコピーしないでください。既存のコードをdrawPolygon(List<Position> positions)のようなパラメータを持つメソッドに抽出します。ですから、配列やリストの両方を持つこのMethodeの呼び出すことができます。

drawPolygon(Arrays.asList(points)); 
drawPolygon(pointsAsList); 
関連する問題