將字串反轉
阿新 • • 發佈:2019-01-07
/*思路 將想要轉換的子串截取出 逆序存取進 字元陣列中 在把字元陣列 轉換成 字串 在替換 如果子串重複 則需要改進*/
public String myConverse(int start, int end,String str) {//有bug 如果子串重複出現 則全部替換
if(start > 0 && end > 0 && end > start && end < str.length()){
String str1 = str.substring(start, end+1);
String str_start = str.substring(0,start);
//System.out.println(str_start);
String str_end = str.substring(end+1,str.length());
//System.out.println(str_end);
String str_new ;//最後拼接成的字串
char[] ch = new char[end+1 - start];
int k = end+1-start;
for(int i = 0; i < k; i++)
{
ch[i] = str1.charAt(k-i-1);
}
String str2 = String.valueOf(ch);
//System.out.println(str2);
//System.out.println(str1 + k);
//String str3 = str.replaceAll(str1, str2);
str_new = str_start + str2 +str_end;
return str_new;
}
else
{
System.out.println("您輸入的引數有誤!!");
return "";
}
}
public String myConverse(int start, int end,String str) {//有bug 如果子串重複出現 則全部替換
if(start > 0 && end > 0 && end > start && end < str.length()){
String str1 = str.substring(start, end+1);
String str_start = str.substring(0,start);
//System.out.println(str_start);
String str_end = str.substring(end+1,str.length());
//System.out.println(str_end);
String str_new ;//最後拼接成的字串
char[] ch = new char[end+1 - start];
int k = end+1-start;
for(int i = 0; i < k; i++)
{
ch[i] = str1.charAt(k-i-1);
}
String str2 = String.valueOf(ch);
//System.out.println(str2);
//System.out.println(str1 + k);
//String str3 = str.replaceAll(str1, str2);
str_new = str_start + str2 +str_end;
return str_new;
}
else
{
System.out.println("您輸入的引數有誤!!");
return "";
}
}