实例:
反转:String类中没有提供,不过可以自己写一个
public class Hello {
public static void main(String[] args) {
Hello hello = new Hello();
String string = "h ello world!";
System.out.println(string);
String fString = hello.reverse(string);
System.out.println(fString);
String fString2 = hello.reverse(fString);
System.out.println(fString2);
}
public String reverse(String s) {
char ch[] = s.toCharArray();
int start = 0, end = ch.length - 1;
char temp;
while (start < end) {
temp = ch[start];
ch[start] = ch[end];
ch[end] = temp;
start++;
end--;
}
String s1 = String.copyValueOf(ch);
return s1;
}
}
运行结果:
h ello world!
!dlrow olle h
h ello world!
StringBuffer类有这个方法:reverse()
public class Hello { public static void main(String[] args) { String string = "h ello world!"; System.out.println(string); String fString = new StringBuffer(string).reverse().toString(); System.out.println(fString); String fString2 = new StringBuffer(fString).reverse().toString(); System.out.println(fString2); } }
运行结果:
h ello world! !dlrow olle h h ello world!
StringBuilder类也有这个方法:reverse()
public class Hello { public static void main(String[] args) { String string = "h ello world!"; System.out.println(string); String fString = new StringBuilder(string).reverse().toString(); System.out.println(fString); String fString2 = new StringBuilder(fString).reverse().toString(); System.out.println(fString2); } }
运行结果:
h ello world! !dlrow olle h h ello world!
递归方法实现字符串反转
public class Hello {
public static void main(String[] args) {
Hello aHello = new Hello();
String string = "h ello world!";
System.out.println(string);
String fString = aHello.reverseString(string);
System.out.println(fString);
}
//反转字符串
public static String reverseString(String s){
if(s.isEmpty()) return s;
return reverseString(s.substring(1))+s.charAt(0);
}
}
运行结果:
h ello world! !dlrow olle h h ello world!