去除字符串两边空格
public static String myTrim(String str){
int start = 0, end = str.length()-1;
while(start<=end && str.charAt(start)==' ')
start++;
while(start<=end && str.charAt(end)==' '){
end--;
}
return str.substring(start, end+1);
}
反转字符串
public static String reverseString(String s){
char[] chs = s.toCharArray();
reverse(chs);
return new String(chs);
}
public static void reverse(char[] chs){
int start=0;
int end = chs.length-1;
for(; start<end; start++,end--){
swap(chs, start, end);
}
}
public static void swap(char[] chs, int start, int end){
char temp = chs[start];
chs[start] = chs[end];
chs[end] = temp;
}
字符串出现次数
public static int getSubCount(String str, String key){
int count = 0;
int index = 0;
while( (index=str.indexOf(key)) != -1 ){
str = str.substring(index+key.length());
count++;
}
return count;
}
最大子串
public static String getMaxSubString(String s1, String s2){
int i, j, k;
String str = "";
String max = "", min = "";
max = (s1.length() > s2.length()) ? s1 : s2;
min = (s1.length() > s2.length()) ? s2 : s1;
for(i=0; i<min.length(); i++){
for(j=0, k=min.length()-i; k!=min.length()+1; j++,k++){
str = min.substring(j, k);
sop(str);
if(max.contains(str)){
return str;
}
}
}
return "";
}