我认为这可能是您正在寻找的。请注意,如果该值存在于第二个数组中但不存在于第一个数组中,它只会添加到第三个“数组”中。在您的示例中,只会存储 rabbit,而不是 dog(即使两者中都不存在 dog)。这个例子可能会被缩短,但我想保持这样,这样更容易看到发生了什么。
第一次导入:
import java.util.ArrayList;
import java.util.List;
然后执行以下操作来填充和分析数组
String a1[] = new String[]{"cat" , "dog"}; // Initialize array1
String a2[] = new String[]{"cat" , "rabbit"}; // Initialize array2
List<String> tempList = new ArrayList<String>();
for(int i = 0; i < a2.length; i++)
{
boolean foundString = false; // To be able to track if the string was found in both arrays
for(int j = 0; j < a1.length; j++)
{
if(a1[j].equals(a2[i]))
{
foundString = true;
break; // If it exist in both arrays there is no need to look further
}
}
if(!foundString) // If the same is not found in both..
tempList.add(a2[i]); // .. add to temporary list
}
根据规范,tempList 现在将包含“兔子”。如果您需要将它作为第三个数组,您可以通过执行以下操作将其转换为该数组:
String a3[] = tempList.toArray(new String[0]); // a3 will now contain rabbit
要打印 List 或 Array 的内容,请执行以下操作:
// Print the content of List tempList
for(int i = 0; i < tempList.size(); i++)
{
System.out.println(tempList.get(i));
}
// Print the content of Array a3
for(int i = 0; i < a3.length; i++)
{
System.out.println(a3[i]);
}