字符串反转的两种方法
前言:最近在一些公司的笔试题中看到了一道常见的字符串题,要求反转字符串,于是小编在此提供两种java实现的字符串反转方法,仅供参考。
第一种:
利用java中的StringBuilder或者StringBuffer类中的reverser()方法,只需几行代码即可搞定。
代码如下:
public class Main {
public static void main(String[] args) {
String str="hello world I love you";
StringBuffer sb=new StringBuffer(str);
sb.reverse();
System.out.println(sb.toString());
}
}
第二种:
利用栈结构,将字符串中字符一一压入栈中后再弹出,便得到了反转的字符串。
代码如下:
import java.util.Stack;
public class Main2 {
public static void main(String[] args) {
String str="hello world I love you";
char strArr[]=str.toCharArray();
Stack<Character> st=new Stack<Character>();
for(char c:strArr) {
st.add(c);
}
char newArr[] =new char[strArr.length];
for(int i=0;i<strArr.length;i++) {
newArr[i]=st.pop();
}
String newStr=new String(newArr);
System.out.println(newStr);
}
}