如何在java中创建存储整数和字符串的多维数组?

时间:2013-12-19 15:36:07

标签: java sql arrays oracle multidimensional-array

我已经在SQL中创建了数据,其中存储了汽车经销商的详细信息。我只是不知道如何在java中存储来自sql的数据,然后我可以在2009年为totaal销售编写方法。我有用sql编写的查询,我想测试一下,看看结果是否相同。

关于如何存储Vechicle表的详细信息的任何想法。将保持车辆ID,品牌,型号,价格等。

由于

3 个答案:

答案 0 :(得分:1)

Java,在它的面向对象的荣耀中,让你代表你的“车辆”对象,就像你需要它一样。您可以创建一个名为 Vehicle 的类,该类具有用于保存列数据的私有变量。

然后,您可以添加方法来获取/设置所述变量并将您的车辆视为一个整体。

最后,您可以将一组Vehicle( s )作为集合进行管理。

真正的快速看法就是这样:

public class Vehicle {
   private int id;
   private String make;
   private String model;

   public Vehicle(){}

   public Vehicle(int id, String make, String model){
       this.id=id;
       this.make=make;
       this.model=model;
   }

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getMake() {
        return make;
    }
    public void setMake(String make) {
        this.make = make;
    }
    public String getModel() {
        return model;
    }
    public void setModel(String model) {
        this.model = model;
    }

    @Override
    public String toString(){
        return this.model + " " + this.make + " " + this.id;
    }

}

你可以更进一步。如果您注意到私有变量有许多共同点,并且您将它们作为一个整体使用而不是单独使用,那么您可以创建另一个用于处理这些私有变量的类。

可能性无穷无尽。

然后执行sql查询的类也可以处理返回的Vehicle集合。

 ArrayList<Vehicle> vehicles = new ArrayList<>();

//This is just for show, here you would iterate through the data/cursor/etc
// that you get back from the sql query
for(Row row: rows) {
   vehicles.add(new Vehicle(Integer.parseInt(row.getColumn("id")),
                            row.getColumn("make").toString(),
                            row.getColumn("model").toString()
               );
}
 return vehicles;

然后看看它是否有效迭代你的收藏并打印出来。

for(Vehicle vehicle:vehicles)
    System.out.println(vehicle);

您可以执行System.out.println(vehicle)调用,因为类Vehicle会覆盖方法toString()

答案 1 :(得分:0)

您可以创建一个Vehicle对象并使用相关数据填充它,如下所示:

public class Vehicle
{
    private int id;
    private String make;
    private String model;
    private double price;

    public Vehicle(int id, String make, String model, double price)
    {
        super();
        this.id = id;
        this.make = make;
        this.model = model;
        this.price = price;
    }
    public int getId()
    {
        return id;
    }
    public void setId(int id)
    {
        this.id = id;
    }
    public String getMake()
    {
        return make;
    }
    public void setMake(String make)
    {
        this.make = make;
    }
    public String getModel()
    {
        return model;
    }
    public void setModel(String model)
    {
        this.model = model;
    }
    public double getPrice()
    {
        return price;
    }
    public void setPrice(double price)
    {
        this.price = price;
    }
}

答案 2 :(得分:0)

一个非常小的建议:
改变这个:
  ArrayList&lt;车辆&gt; vehicles = new ArrayList&lt;&gt;();
对此:
  列表&lt;车辆&gt; vehicles = new ArrayList&lt;&gt;();
在上一篇文章中。