我有两个包含对象的列表,其中 list1(names) 只有fullnames without middlenams
一个,而另外一个 list2(fullnames) 有fullnames with middle names
。如果 list1 有 name likebarack obama
并且 list2 有 name barack hussein obama
,这是相同的但有中间名。然后我必须删除barack obama
list1中的条目。
我试过下面的代码,但它没有删除list1中的条目。
public class Test {
public static void main(String args[]) {
List<String> names = new ArrayList<>()
names.add("shannon sperling");
names.add("john smith");
names.add("Mary Smith");
names.add("kim taylor");
names.add("Barack obama");
List<String> fullnames = new ArrayList<>();
fullnames.add("Mary Elizabeth Smith");
fullnames.add("Lou Henry Hoover");
fullnames.add("Barack hussein obama");
for(Object process :names)
{
if(fullnames.contains(process))
{
names.remove(process);
}
}
System.out.println(names);
}
}