我是编程新手,我正在学习初级编程课程。我试着四处寻找我的答案,我发现了可能有效的结果,但我不明白如何在使用堆栈时实现它们。我试图在不反转整个字符串的情况下反转字符串的单个单词。
例如:用户输入句子“Pies are great!” 我需要输出为“seiP era !taerg”
到目前为止,我已经成功编写了一个可以完全反转字符串的程序,因此使用上述示例的输出是:“!taerg era seiP” 正如您所看到的,我想在不反转顺序的情况下反转单词本身的话,但我必须使用堆栈输入。
以下是我到目前为止所拥有的:
public class ReversedString{
private static ArrayStack<String> stack;
public static void main(String[] args) {
stack = new ArrayStack<String>();
String string = "";
String stringReversed = "";
@SuppressWarnings("resource")
Scanner scanner = new Scanner(System.in);
System.out.print("Enter the string that you want to reverse: ");
string = scanner.nextLine();
string.split(" ");
for(int i=0; i<string.length(); i++){
stack.push(string.substring(i, i+1));
}
while(!stack.isEmpty()){
stringReversed += stack.pop();
}
System.out.println("The reverse of the string is: " + stringReversed);