java中判断一个String字符串或字符数组中包含某个字段

/**
     * 判断String字符串中包含某个字段
     * @param oriStr 原始字符串
     * @return
     */
    private static boolean findString(String oriStr) {
        if (StringUtils.isNotEmpty(oriStr)) {
//            if (oriStr.contains("005")) {
//                return true;
//            }
            if (oriStr.indexOf("005") != -1) {
                return true;
            }
        }
        return false;
    }

    /**
     * 判断String数组中是否包含某个字符串
     * @param mathStr 需要匹配的字符串
     * @return
     */
    private static boolean findStringArray(String mathStr) {
        if (StringUtils.isNotEmpty(mathStr)) {

            String str = "005,006,007,008";
            String[] strs = str.split(",");
            List<String> list = Arrays.asList(strs);

            if (list.contains(mathStr)) {
                return true;
            }
//            if (list.indexOf(mathStr) != -1) {
//                return true;
//            }
        }
        return false;
    }
    
    //以上使用contains或者indexOf方法都可以判断。

    //使用java8 lambda
        String str = "005,006,007,008";
        String[] strs = str.split(",");
        List<String> list = Arrays.asList(strs);
        Long count = list.stream().filter(x -> x.equals("0015")).count();
        System.out.println("count="+count);

        Optional<String>  optional =  list.stream().filter(x -> x.equals("005")).findFirst();
        System.out.println("字符串="+optional.isPresent());

 

上一篇:SQL(五)


下一篇:C++ STL