Java 如何仅将新项目从一个列表复制到另一个列表

Java 如何仅将新项目从一个列表复制到另一个列表,java,android,Java,Android,我有一个字符串L1的列表 我有另一个字符串L2列表 我只想将L2中尚未包含的项目从L1复制到L2 我知道这可能很简单,但我找不到一个简单的解决方案用两个列表填充一个集合,然后将集合转换回一个列表(列表2) Set Set=newhashset(列表2); set.addAll(列表1); list2=新阵列列表(集合); 从下面的代码片段中获取帮助。这会有帮助的 List<String> l1 = new ArrayList<String>();

我有一个字符串L1的列表

我有另一个字符串L2列表

我只想将L2中尚未包含的项目从L1复制到L2


我知道这可能很简单,但我找不到一个简单的解决方案

用两个列表填充一个集合,然后将集合转换回一个列表(列表2)

Set Set=newhashset(列表2);
set.addAll(列表1);
list2=新阵列列表(集合);

从下面的代码片段中获取帮助。这会有帮助的

        List<String> l1 = new ArrayList<String>();
        List<String> l2 = new ArrayList<String>();

        l1.add("A");
        l1.add("B");
        l1.add("C");

        l2.add("C");
        l2.add("D");
        l2.add("E");

        Set<String> s = new HashSet<String>();
        s.addAll(l1);
        s.addAll(l2);

        List<String> finalList = new ArrayList<String>();
        finalList.addAll(s);

        for (String str : finalList) {
            System.out.println(str);
        }
List l1=new ArrayList();
列表l2=新的ArrayList();
l1.添加(“A”);
l1.添加(“B”);
l1.添加(“C”);
l2.添加(“C”);
l2.添加(“D”);
l2.添加(“E”);
Set s=新的HashSet();
s、 addAll(l1);
s、 addAll(l2);
List finalList=new ArrayList();
finalList.addAll(s);
for(字符串str:finalList){
系统输出打印项次(str);
}
类似

Set<String> stringSet = new HashSet<>(Arrays.asList(new String[]{"1","2","3"}));
stringSet.addAll(Arrays.asList(new String[]{"1","2","3","4"}));
List<String> finalList = new ArrayList<>(stringSet);
Set-stringSet=newhashset(Arrays.asList(新字符串[]{“1”、“2”、“3”}));
addAll(Arrays.asList(新字符串[]{“1”、“2”、“3”、“4”}));
List finalList=新的ArrayList(stringSet);

列表中的值是否总是唯一的?如果是,则使用集合更合适。此问题似乎是的重复。您可以使用removeAll从新列表中删除现有元素,并将其传递给现有列表,现在新列表仅包含新项目,您现在可以在现有列表上调用addAll传递给新列表…@RahulVerma添加了3行。
Set<String> stringSet = new HashSet<>(Arrays.asList(new String[]{"1","2","3"}));
stringSet.addAll(Arrays.asList(new String[]{"1","2","3","4"}));
List<String> finalList = new ArrayList<>(stringSet);