不使用contains方法,对字符串数组进行模糊搜索

84 阅读1分钟
public static List<String> search(String[] strs,String str){
    List<String> result = new ArrayList<>();
    for (int i = 0; i < strs.length; i++) {     //遍历字符串数组
            String element = strs[i];               //获取数组中的字符串
            if (element.length() > str.length()){
                for (int j = 0; j < element.length()-str.length()+1; j++) {        //从第几个字符开始拼接,拼接多少次
                    String tempResult = "";                                         //定义用于拼接的变量 设定为空字符串
                    for (int k = j; k < j+str.length(); k++) {                     //拼接多少个字符
                        tempResult+=element.charAt(k);                              //拼接动作
                    }
                    if (tempResult.equals(str)){               //拼接完成后与用户输入的值比较
                               result.add(element);     //如果相同则保存到集合中
                    }
                }
            }
     }
    return result;
}