package suanfa.string;
import java.util.Stack;
/**
反转字符串
/
public class Solve {public static void main(String[] args) {
String s = "helloword"; System.out.println(solveByTwoPoint(s));
}
/**
通过栈实现
@param s
@return
/
public static String solveByStack(String s) {
Stack<character> stack = new Stack<character>();
char[] reverse = new char[s.length()];
for (int i = 0; i < s.length(); i++) {</character></character>stack.add(s.charAt(i));
}
for (int j = 0; j < s.length(); j++) {
reverse[j] = stack.pop();
}
return new String(reverse);
}/**
通过双指针实现
@param str
@return
/
public static String solveByTwoPoint(String str) {char[] arr = str.toCharArray();
int length = arr.length;for (int i = 0; i < arr.length / 2; i++) {
char tmp; tmp = arr[i]; arr[i] = arr[length - i - 1]; arr[length - i - 1] = tmp;
}
return new String(arr);
}
}