本文主要是介绍java常用算法之返回字符串中目标字符串的位置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
/*** @Description 返回字符串中目标字符串的位置* @param str* @return*/public static Integer strStr(String str, String target) {int length = str.length();int targetLength = target.length();if (targetLength > length) {return -1;}if (targetLength == 0) {return 0;}int num = length - targetLength;for (int i = 0; i < num; i++) {if (target.charAt(0) != str.charAt(i)) {while (++i <= num && str.charAt(i) != target.charAt(0));}if (i < num) {int j = i + 1;int end = i + targetLength;for (int k = 1; j < end && str.charAt(j) == target.charAt(k); j++, k++);if (j == end) {return i;}}}return -1;}
这篇关于java常用算法之返回字符串中目标字符串的位置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!