-1

可能重复:
在 Java 中,如何测试数组是否包含某个值?

我正在尝试做一种:

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
    }
}

有人可以帮忙吗?

4

2 回答 2

3
if(newAray.contains(s))
{
    //do nothing
}
else
{
    //add to newArray
}
于 2012-07-13T00:43:38.077 回答
2

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

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()]);
于 2012-07-13T00:48:30.467 回答