1、字符串的比较 myCompareTo方法
//实现方法 compareTo, 能够实现按照字典序比较字符串大小
public static int myCompareTo(String src, String dst) {
char[] srcArray = src.toCharArray();
char[] dstArray = dst.toCharArray();
int srcLen = srcArray.length;
int dstLen = dstArray.length;
int i=0;
for(i = 0; i < srcLen; i++){
if(srcArray[i] != dstArray[i]){
return srcArray[i]-dstArray[i];//返回ASCII码差值
}
else
i++;//如果srcArray[i]==dstArray[i],判断下一个字符
}
if (srcLen == dstLen) {
return 0;
}else if (srcLen < dstLen) {
return -1;
}else {
return 1;
}
}
2、字符串的查找 myIndexOf方法
//实现方法 indexOf, 能够找出字符串子串存在的位置
public static int myIndexOf(String str, String str1) {
if (str1 == null) {
return -1;
}
for (int i = 0; i < str.length(); i++) {
if (i + str1.length() <= str.length() && str.substring(i,i + str1.length()).equals(str1)) {
return i;
}
}
return -1;
}
3、字符串的替换 myReplace方法
//实现方法 replace, 能够替换字符串中的某个部分
public static String myReplace(String s1, String target, String replacement) {
String result3 = "";
// 表示追加字符串的次数
int count3 = 0;
// 记录下一次字符串的结尾位置: 即这一次字符串结尾位置 + target的长度
int start = 0;
for (int i = 0; i < s1.length(); i++) {
if (i + target.length() <= s1.length() && target.equals(s1.substring(i, i + target.length()))) {
if (count3 == 0) {
result3 += s1.substring(0, i) + replacement;
start = i + target.length();
count3++;
} else {
result3 += s1.substring(start, i) + replacement;
start = i + target.length();
}
}
}
if (start < s1.length()) {
result3 += s1.substring(start, s1.length());
}
return result3;
}