如何将ArrayList的组件复制到常规数组?

时间:2013-12-08 19:02:03

标签: java arraylist copy

  public boolean makeReservation(int id, AvilaNatalyPassenger request) {
    boolean status = true;
    ArrayList<Integer> inputValues = new ArrayList<Integer>();
        for (int i = 0; i < 22; i++) {
            for (int j = 0; j < 5; j++) {
             id = seats[i][j];
                if (id != -1) {
                    if (inputValues.contains(id)) {
                    status = false;
                    break;
                    }
                    else {
                    inputValues.add(id);
                    for(int a = 0; a < inputValues.size; a++)
                        seats[a] = inputValues[a];

                    }
                }
            }
         }

 return status;
 }

这就是我的意思,但不正确。我需要将inputVaule arrayList中的内容添加到数组席位中。

2 个答案:

答案 0 :(得分:1)

您还可以查看Java API:http://docs.oracle.com/javase/7/docs/api/index.html?java/util/ArrayList.html

  

public Object [] toArray()

     

以适当的顺序(从第一个元素到最后一个元素)返回包含此列表中所有元素的数组。

所以这就是你能做的:

seats[a] = inputValues.toArray();

此外,您不能使用inputValues [a],因为它不是数组。你可能做的是

seats[a] = (inputValues.toArray())[a];

答案 1 :(得分:0)

回答你的问题,这是一个例子:

ArrayList<String> stock_list = new ArrayList<String>();
stock_list.add("stock1");
stock_list.add("stock2");
String[] stockArr = new String[stock_list.size()];
stockArr = stock_list.toArray(stockArr);
for(String s : stockArr)
    System.out.println(s);

示例取自here