package day16;
//字符串反转
public class StringReverse {
public static void main(String[] args) {
String s = "嫣唐是神女的我";
String s1 = reverse(s);
System.out.println(s1);
System.out.println("---------");
String s2 = reverse1(s);
System.out.println(s2);
System.out.println("---------");
String s3 = reverse2(s);
System.out.println(s3);
System.out.println("---------");
String s4=reverse3(s);
System.out.println(s4);
}
//方式一:利用StringBuffer类的reverse()和toString()方法:
private static String reverse2(String s) {
StringBuffer sb = new StringBuffer(s);
// sb.append(s);
StringBuffer sb1 = sb.reverse();
String s1 = sb1.toString();
return s1;
}
//方式二:利用String类的charAt()方法:
private static String reverse1(String s) {
String s2 = "";
// for(int i=0;i<s.length();i++) {
// s2=s.charAt(i)+s2;
//用s2 += s.charAt(i);则for循环必须要逆着遍历,但是用s2=s.charAt(i)+s2;
//则和for循环没关系,无论正向遍历还是逆向遍历,其结果都会反转.
// }
for (int i = s.length() - 1; i >= 0; i--) {
s2 += s.charAt(i);
}
return s2;
}
//方式三:利用String类的toCharArray()方法:
private static String reverse(String s) {
String s1 = "";
char[] chas = s.toCharArray();
for (int i = 0; i < chas.length; i++) {
s1 = chas[i] + s1;
}
return s1;
}
//方式四:利用String类的toCharArray()方法交换
private static String reverse3(String s) {
char [] chas=s.toCharArray();
for(int i=0;i<(chas.length/2);i++) {
char temp=chas[i];
chas[i]=chas[chas.length-1-i];
chas[chas.length-1-i]=temp;
}
return s.valueOf(chas);
}
}
Java中字符串反转的四种求法
最新推荐文章于 2023-03-02 17:00:02 发布