package com.boman.common.core.utils.array;

import org.apache.commons.compress.utils.Lists;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * @author shiqian
 * @date 2021年04月25日 14:05
 **/
public class ArrayUtils extends org.apache.commons.lang3.ArrayUtils {

    /**
     * 校验数组是否包含指定值
     *
     * @param arr         数组
     * @param targetValue 值
     * @return 是否包含
     */
    public static boolean arraysContains(String[] arr, String targetValue) {
        for (String str : arr) {
            if (str.contains(targetValue)) {
                return true;
            }
        }

        return false;
    }

    /**
     * 按照逗号切割，转成list, 给id用的，因为id都是long
     *
     * @param ids ids
     * @return 是否包含
     */
    public static List<Long> split(String ids) {
        String[] split = ids.split(",");
        List<Long> result = new ArrayList<>(split.length);
        for (String idStr : split) {
            result.add(Long.parseLong(idStr));
        }

        return result;
    }

    /**
     * 数组是否为空
     *
     * @param value 数组
     * @return 是否包含
     */
    public static boolean equalsEmptyArray(String value) {
        return "[]".equals(value);
    }

    /**
     * 功能描述: 切割转list
     *
     * @param input  input
     * @param symbol 分隔符
     * @return java.util.List<java.lang.String>
     */
    public static List<String> split(String input, String symbol) {
        String[] split = input.split(symbol);
        return new ArrayList<>(Arrays.asList(split));
    }
}
