从List中提取String数组

时间:2015-09-08 10:19:30

标签: java casting

开发Java Android App但我认为这是一个直接的Java问题。

我将List声明如下;

List list= new ArrayList<String[]>();

我想在循环中提取每个String [];

for(int i=0; i < list.size(); i++) {
   //get each String[]
   String[] teamDetails = (String[])list.get(i);
}

这个错误,我猜它只是不喜欢我像这样投射String []。

有人可以建议从我的列表中提取String []吗?

5 个答案:

答案 0 :(得分:6)

使用List<String[]>,您可以使用更新的循环结构:

    List<String[]> list = new ArrayList<String[]>();

    //I want to extract each String[] in a loop;
    for ( String[] teamDetails : list) {

    }

    // To extract a specific one.
    String[] third = list.get(2);

答案 1 :(得分:1)

尝试以这种方式声明列表

List<String[]> list = new ArrayList<>();

for(int i = 0; i < list.size(); i++) {
    //get each String[]
    String[] teamDetails = list.get(i);
}

此外,调用size函数是错误的,你需要添加括号

答案 2 :(得分:0)

$id

答案 3 :(得分:0)

for for loop change list.size to list.size()

工作正常查看https://ideone.com/jyVd0x

答案 4 :(得分:0)

首先,您需要更改声明 List list= new ArrayList<String[]>();List<String[]> list = new ArrayList();

之后,您可以执行类似

的操作
String[] temp =  new String[list.size];

for(int i=0;i<list.size();i++)`
{
temp[i] = list.get(i);
}