Java Array Union union(int[]... arrays)

Here you can find the source of union(int[]... arrays)

Description

Returns an array with all elements in input arrays (no repetitions).

License

Open Source License

Parameter

Parameter Description
arrays Input arrays

Return

A new array with all elements in input arrays

Declaration

public static int[] union(int[]... arrays) 

Method Source Code

//package com.java2s;
/*******************************************************************************
 * Copyright (c) 2016 Pablo Pavon-Marino.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the GNU Lesser Public License v2.1
 * which accompanies this distribution, and is available at
 * http://www.gnu.org/licenses/lgpl.html
 *
 * Contributors://from   ww w.  jav  a 2 s .com
 *     Pablo Pavon-Marino - Jose-Luis Izquierdo-Zaragoza, up to version 0.3.1
 *     Pablo Pavon-Marino - from version 0.4.0 onwards
 ******************************************************************************/

import java.util.*;

public class Main {
    /**
     * Returns an array with all elements in input arrays (no repetitions). There is no order guarantee.
     *
     * @param arrays Input arrays
     * @return A new array with all elements in input arrays
     *  
     */
    public static int[] union(int[]... arrays) {
        Set<Integer> unionSet = new LinkedHashSet<Integer>();
        for (int[] array : arrays)
            for (int j = 0; j < array.length; j++)
                unionSet.add(array[j]);

        return toArray(unionSet);
    }

    /**
     * Converts an array of {@code String} with the values, into a {@code int} array. Uses {@code Integer.parseInt} to parse the number, an can raise the exceptions 
     * that this method raises
     *
     * @param list Input list
     * @return output array
     */
    public static int[] toArray(String[] list) {
        int[] res = new int[list.length];
        int counter = 0;
        for (String s : list)
            res[counter++] = Integer.parseInt(s);
        return res;
    }

    /**
     * Converts a collection ({@code List}, {@code Set}...) of {@code Integer} objects to an {@code int} array.
     *
     * @param list Input list
     * @return {@code int} array
     *  
     */
    public static int[] toArray(Collection<Integer> list) {
        return asPrimitiveArray(list.toArray(new Integer[list.size()]));
    }

    /**
     * Converts from an {@code Integer} array to an {@code int} array.
     *
     * @param array {@code Integer} array
     * @return Equivalent {@code int} array
     */
    public static int[] asPrimitiveArray(Integer[] array) {
        int[] primitiveArray = new int[array.length];

        for (int i = 0; i < array.length; i++)
            primitiveArray[i] = array[i];

        return primitiveArray;
    }
}

Related

  1. domainUnion(String[] a, String[] b)
  2. domainUnion(String[] a, String[] b)
  3. getUnionStr(String[] strAry, String unionChar, String appendChar)
  4. union(int[] a, int[] b)
  5. unionOfStringArrays(String x[], String y[])