Compare two Java String array of strings

Compare two strings String array elements differences

1, tools

package io.renren.common.utils;

import org.apache.commons.lang3.ArrayUtils;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @program: ivvdata-security
 * @Description: Comparison of two old and new String type array
 * @Author : ENTER
 * @create: 2019-11-08 11:13
 */
public class CompareStringArrayUtil {

    / ** 
     * @param oldArr old array
     * @Param newArr new array
     * @Return the Map contains two arrays, compared to the old array, a new array which elements are more and less which elements
      * / 
    public  static the Map <String, String []> CompareStringArray (String [] oldArr, String [] newArr ) {
        List<String> addList = new ArrayList<>();
        List<String> deleteList = new ArrayList<>();

        for (String anOldArr : oldArr) {
            if (!ArrayUtils.contains(newArr, anOldArr)) {
                deleteList.add(anOldArr);
            }
        }

        for (String aNewArr : newArr) {
            if (!ArrayUtils.contains(oldArr, aNewArr)) {
                addList.add(aNewArr);
            }
        }

        String[] addArr = addList.toArray(new String[addList.size()]);
        String[] deleteArr = deleteList.toArray(new String[deleteList.size()]);
        Map<String, String[]> res = new HashMap<>();
        res.put("addArr", addArr);
        res.put("deleteArr", deleteArr);
        return res;
    }

}

2, the calling method

public static void main(String[] args) {
        String[] oldArr = {"1","2"};
        String[] newArr = {"1","3","4"};
        Map<String, String[]> res = CompareStringArrayUtil.CompareStringArray(oldArr, newArr);
        System.out.println("deleteArr: "+ Arrays.toString(res.get("deleteArr")));
        System.out.println("addArr: "+ Arrays.toString(res.get("addArr")));   
 }

3, operating results

deleteArr: [2]
addArr: [3, 4]

This article is reproduced links: https://blog.csdn.net/Mr_EvanChen/article/details/80669079

Guess you like

Origin www.cnblogs.com/H-Dream/p/11847003.html