检查如果一个ArrayList的元素在其他present [英] check if elements of one ArrayList are present in other

查看:88
本文介绍了检查如果一个ArrayList的元素在其他present的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个的ArrayList

 的ArrayList<串GT; A1
ArrayList的<串GT; a2

我要检查,如果A1的所有要素都在A2 present。
这就是我正在努力,我从一个问题上了车SO

 如果(Arrays.asList(A2).containsAll(Arrays.asList(A1)))
{a2ContainsA1 = TRUE;}

这是不是给一致的结果

...是否有这样做的任何其他方式?


解决方案

如果不知道我正确理解你的问题,你为什么使用 Arrays.asList() <? / p>

试过这个:

 的ArrayList&LT;串GT; A1 =新的ArrayList&LT;串GT;();
    ArrayList的&LT;串GT; A2 =新的ArrayList&LT;串GT;();    a1.add(一);
    a1.add(B);
    a2.add(B);
    a2.add(一);    的System.out.println(a2.containsAll(A1));

和它输出真正
添加到的附加元素A1 将失败它(如预期):

 的ArrayList&LT;串GT; A1 =新的ArrayList&LT;串GT;();
    ArrayList的&LT;串GT; A2 =新的ArrayList&LT;串GT;();    a1.add(一);
    a1.add(B);
    a1.add(C);
    a2.add(B);
    a2.add(一);    的System.out.println(a2.containsAll(A1));

和它输出

I have two arraylist

ArrayList<String> a1
ArrayList<String> a2

I want to check if all the elements of a1 are present in a2. this is what I was trying which I got from a question on SO

if (Arrays.asList(a2).containsAll(Arrays.asList(a1)))
{a2ContainsA1=true;}

which is not giving consistent results...is there any other way of doing this?

解决方案

Not sure if I understand your question correctly, why are you using Arrays.asList() ?

Tried this:

    ArrayList<String> a1 = new ArrayList<String>();
    ArrayList<String> a2 = new ArrayList<String>();

    a1.add("a");
    a1.add("b");
    a2.add("b");
    a2.add("a");

    System.out.println(a2.containsAll(a1));

And it outputs true Adding an additional element to a1 will fail it (as expected):

     ArrayList<String> a1 = new ArrayList<String>();
    ArrayList<String> a2 = new ArrayList<String>();

    a1.add("a");
    a1.add("b");
    a1.add("c");
    a2.add("b");
    a2.add("a");

    System.out.println(a2.containsAll(a1));

And it outputs false

这篇关于检查如果一个ArrayList的元素在其他present的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆