利用栈的压栈和出栈方法实现字符串的反转java代码
时间: 2024-09-24 14:15:20 浏览: 6
在Java中,你可以使用栈的数据结构来实现字符串的反转。这里是一个简单的示例,展示了如何利用`ArrayList`作为动态栈来完成这个任务:
```java
import java.util.Stack;
public class StringReversal {
public static String reverseString(String s) {
// 创建一个空栈
Stack<Character> stack = new Stack<>();
// 将输入字符串中的每个字符压入栈中
for (char c : s.toCharArray()) {
stack.push(c);
}
// 从栈顶开始弹出字符并拼接成新的字符串
StringBuilder reversed = new StringBuilder();
while (!stack.isEmpty()) {
reversed.append(stack.pop());
}
return reversed.toString();
}
public static void main(String[] args) {
String input = "Hello, World!";
System.out.println("Original string: " + input);
String reversed = reverseString(input);
System.out.println("Reversed string: " + reversed);
}
}
```
在这个例子中,我们首先将输入字符串中的每个字符依次压入栈中,然后逐个从栈中取出字符并添加到新字符串`reversed`中。最后返回反转后的字符串。