Java Array Equal equalMaps(Map expected, Map actual)

Here you can find the source of equalMaps(Map expected, Map actual)

Description

equal Maps

License

Open Source License

Declaration

private static boolean equalMaps(Map<String, String[]> expected, Map<String, String[]> actual) 

Method Source Code

//package com.java2s;
/*/*from w  ww  . java  2s. c  o  m*/
 *  Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *  http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */

import java.util.Arrays;

import java.util.Map;

public class Main {
    private static boolean equalMaps(Map<String, String[]> expected, Map<String, String[]> actual) {
        for (Map.Entry<String, String[]> expectedEntry : expected.entrySet()) {
            String[] expectedArray = expectedEntry.getValue();
            String[] actualArray = actual.get(expectedEntry.getKey());
            if (actualArray == null) {
                return false;
            } else {
                boolean result = equalStringArrays(expectedArray, actualArray);
                if (!result) {
                    return false;
                }
            }
        }

        return true;
    }

    private static boolean equalStringArrays(String[] expected, String[] actual) {
        return Arrays.asList(expected).stream()
                .filter(expectedValue -> Arrays.asList(actual).stream().filter(expectedValue::equals).count() > 0)
                .count() == expected.length;
    }
}

Related

  1. equal(int[] a, int[] b)
  2. equalByRows(boolean[][] a, boolean[][] b)
  3. equalFreqBinning(double[][] sampleData, int numPredVals, int numRespVals, int divInd)
  4. equalIgnoreOrder(final Object[] array1, final Object[] array2)
  5. equalityCheck(byte[] a, byte[] b)
  6. equalOrDie(String testName, Object[] a, Object[] b)
  7. equals(byte[] a, byte[] b)
  8. equals(byte[] a1, byte[] a2)
  9. equals(byte[] data1, byte[] data2)