簡體   English   中英

如何在ArrayList中添加一對數字?

[英]How can I add a pair of numbers to an ArrayList?

我正在嘗試創建具有某些形狀尺寸的ArrayList 我的代碼是:

ArrayList<Double> shapes = new ArrayList<Double>();

shapes.add(2.5,3.5); 
shapes.add(5.6,6.5);
shapes.add(8.4,6.9);

我知道這不起作用,但我如何將一對如(2.5,3.5)到數組中?

創建自己的課程:

public class MyClass {
   double x;
   double y;
   public MyClass(double x, double y) {
      this.x = x;
      this.y = y;
   }
}

然后創建該類型的ArrayList

ArrayList<MyClass> shapes = new ArrayList<>();

添加到它:

MyClass pair = new MyClass(2.5,3.5);
shapes.add(pair);

如果要獲取xy坐標,可以在類中添加其他方法,例如public double getX() { return x; } public double getX() { return x; }然后你可以這樣做:

shapes.get(0).getX();

*這只是一個示例,修改代碼,因為您認為它符合您的需求

這可能是你正在尋找的

List<double []> shapes = new ArrayList<>();
shapes.add(new double [] {2.5,3.5});

不過,更喜歡使用Maroun的建議。 這看起來很干凈,因為以后您可能想要為該Shape對象添加更多屬性。

創建一個模型類,例如:

public class Dimensions{
   private double l;
   private double b;
  public Dimensions(double l, double b){
    this.l=l;
    this.b=b;
  }
  public void setL(double l){
   this.l=l;
  }
  public void setB(double b){
   this.b=b;
  }
  public double getB(){
   return this.b;
  }
  public double getL(){
   return this.l;
  }
}

現在,您可以通過以下方式添加arraylist:

ArrayList<Dimensions> shapes=new ArrayList<Dimensions>();
shapes.add(new Dimensions(2.5,3.5));
shapes.add(new Dimensions(5.6,6.5));

並通過以下方式訪問它:

double l;
double b;
for(Dimensions dimensions:shapes){
 l=dimensions.getL();
 b=dimensions.getB();
 //some more dimensions specific code goes here
}

我知道這是舊的,但我最近必須做這樣的事情,將你的坐標存儲為數組:

class yourclass{
ArrayList<yourclass> arr[];
void addcord(double x,double y)  {
arr[(int)x].get((int) y);
}
}

應該這樣做。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM