Check whether c2 contains any element in c1. - Java java.util

Java examples for java.util:Collection Compare

Description

Check whether c2 contains any element in c1.

Demo Code

/*//  ww  w . ja v a2 s.  com
 * Copyright (C) 2009-2012 University of Freiburg
 *
 * This file is part of SMTInterpol.
 *
 * SMTInterpol is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published
 * by the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * SMTInterpol is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with SMTInterpol.  If not, see <http://www.gnu.org/licenses/>.
 */
//package com.java2s;
import java.util.Collection;

public class Main {
    public static void main(String[] argv) {
        Collection c1 = java.util.Arrays.asList("asdf", "java2s.com");
        Collection c2 = java.util.Arrays.asList("asdf", "java2s.com");
        System.out.println(containsAny(c1, c2));
    }

    /**
     * Check whether <code>c2</code> contains any element in <code>c1</code>.
     * @param <E> The type of the arguments.
     * @param c1 Base collection against which we check.
     * @param c2 Collection which should contain any of the elements in c1.
     * @return <code>true</code> iff at least one element of <code>c1</code> is
     * contained in <code>c2</code>.
     */
    public static <E> boolean containsAny(Collection<E> c1, Collection<E> c2) {
        for (E elem : c1) {
            if (c2.contains(elem))
                return true;
        }
        return false;
    }

    /**
     * Check whether <code>c2</code> contains any element in <code>c1</code>.
     * @param <E> The type of the arguments.
     * @param c1 Base collection against which we check.
     * @param c2 Collection which should contain any of the elements in c1.
     * @return <code>true</code> iff at least one element of <code>c1</code> is
     * contained in <code>c2</code>.
     */
    public static <E> boolean containsAny(E[] c1, Collection<E> c2) {
        for (E elem : c1) {
            if (c2.contains(elem))
                return true;
        }
        return false;
    }
}

Related Tutorials