实现java利用栈的压栈和出栈方法实现字符串https://www.educoder.net的反转的代码
时间: 2024-09-28 14:16:40 浏览: 38
在Java中,我们可以使用栈(Stack)的数据结构来实现字符串的反转。这里是一个简单的例子,我们首先将字符串的所有字符依次入栈,然后依次从栈顶取出并拼接成新的字符串,实现了反转的效果:
```java
import java.util.Stack;
public class StringReversalUsingStack {
public static String reverseString(String str) {
// 创建一个空的栈
Stack<Character> stack = new Stack<>();
// 将字符串中的每个字符压入栈中
for (char c : str.toCharArray()) {
stack.push(c);
}
// 初始化一个空字符串用于存放反转后的字符
StringBuilder reversedStr = new StringBuilder();
// 从栈顶取出字符并添加到新字符串中
while (!stack.isEmpty()) {
reversedStr.append(stack.pop());
}
// 返回反转后的字符串
return reversedStr.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);
}
}
```
在这个代码里,`reverseString`函数接收一个字符串作为输入,通过循环遍历并将每个字符压入栈,最后从栈中弹出所有元素并连接成新的字符串。运行这个程序,你会看到输入的字符串"Hello, World!"反转成了 "!dlroW ,olleH"。
阅读全文