JAVA将 'abc123' 字符串反转?
答:四种常用方法:(没看懂方法调用,以后学了再看吧)
- StringBuilder的reverse()方法,最简单
public static String reverse4(String s) {
return new StringBuffer(s).reverse().toString();
}
2.使用字符串数组,实现从尾部开始逐个逆序放入字符串
public static String reverse3(String s) {
char[] array = s.toCharArray();
String reverse = "";
for(int i = array.length - 1; i >= 0; i--)
reverse += array[i];
return reverse;
}
3.使用String的CharAt方法,使用String的CharAt方法取出字符串中的各个字符,然后插入到字符串中,调用StringBuilder的insert()方法进行操作。
public static String reverse2(String s) {
int length = s.length();
String reverse = "";
for(int i = 0; i < length; i++)
reverse = s.charAt(i) + reverse;
return reverse;
}
4.使用递归的方法,实现字符串反转。
public static String reverse1(String s) {
int length = s.length();
if(length <= 1){
return s;
}
String left = s.substring(0, length / 2);
String right = s.substring(length / 2, length);
return reverse1(right) + reverse1(left);
}
注释:
- 方法一:reverse()
import java.util.Scanner;
public class ReverseTest {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in); //获取用户输入
System.out.println("请输入字母:"); //提示
StringBuilder a=new StringBuilder(sc.nextLine()); //新建StringBuilder对象
StringBuilder re=a.reverse(); //调用reverse()方法获取反转后的StringBuilder
System.out.println(re); //输出
sc.close(); //关闭流节省资源
}
}
方法二:使用字符串数组
方法三:CharAt、insert()方法
方法四:递归