数组中的Java Test元素

Java Test element in an array

本问题已经有最佳答案,请猛点这里访问。

0

我想做的是:

1
2
3
4
5
6
7
8
9
10
11
12
for(String s : myArray)
{
    if(s is in newArray) //how do you test this? i want something like
                        //if(newArray.indexOf(s)!=-1)
    {
        //do nothing
    }
    else
    {
        //add to newArray
    }
}

有人能帮忙吗?


1
2
3
4
5
6
7
8
if(newAray.contains(s))
{
    //do nothing
}
else
{
    //add to newArray
}


不能随意向数组添加项,因为数组的大小是固定的。您需要先将数组转换为列表,然后将项添加到TE列表,最后将列表转换回数组:

1
2
3
4
5
6
7
List<String> tmp = new ArrayList<String>(Arrays.asList(newArray));
for(String s : myArray) {
    if(!tmp.contains(s)) {
        tmp.add(s);
    }
}
newArray = tmp.toArray(new String[tmp.size()]);