Java 使用堆栈结构反转字符串/字

Java 使用堆栈结构反转字符串/字,java,Java,我想知道如何在java中反转用户输入的单词或字符串 我已经完成了简单的部分 import java.util.Scanner; public class Stack { public static void main(String args[]){ System.out.println("Please enter a word to reverse: "); Scanner sc=new Scanner(System.in); String

我想知道如何在java中反转用户输入的单词或字符串 我已经完成了简单的部分

import java.util.Scanner;
public class Stack
{
    public static void main(String args[]){
        System.out.println("Please enter a word to reverse: ");
        Scanner sc=new Scanner(System.in);
        String name=sc.nextLine();


    }

     private int maxSize; // size of stack array
     private long[] stackArray;
     private int top; // top of stack
     public Stack(int s) { // constructor
         maxSize = s; // set array size
         stackArray = new long[maxSize]; // create array
         top = -1; // no items yet
        }    
     public void push(long j) { // put item on top of stack 
         top++;
         stackArray[top] = j; // increment top, insert item
        }
     public long pop() { // take item from top of stack

         return stackArray[top--]; //access item, decrement top
        } 
}
这基本上只接收用户输入,什么也不做(并且有pop和push方法)

只是想知道是否有人可以帮我反转字符串,让我们说“你好”(请记住它是用户提交的字符串)


任何帮助都将不胜感激

您可以使用java中的堆栈集合,只需将每个字符推入其中即可。 然后弹出每个单词并将它们连接起来,您将得到相反的单词

public static void main(String[] args) {
    Stack<String> stack = new Stack<String>();
    StringBuilder stringBuilder = new StringBuilder();
    String word = "WORD";
    for (int i = 0; i < word.length(); i++) {
        stack.push(word.substring(i,i+1));
    }
    for (int i = 0; i < word.length(); i++) {
        stringBuilder.append(stack.pop());
    }
    System.out.println(stringBuilder.toString());
}
publicstaticvoidmain(字符串[]args){
堆栈=新堆栈();
StringBuilder StringBuilder=新的StringBuilder();
String word=“word”;
for(int i=0;i
  • 你有一堆
    long
    ,但你想要一堆
    char
    s。你会如何解决这个问题
  • 如果将2个字符推到堆栈上,然后将它们都弹出,并依次将每个字符追加到一个新字符串,会发生什么情况
    那么,当你把一个单词中的每个字符放入一个堆栈时会发生什么呢?你就快到了!将“Hello”插入堆栈-->
    [H,e,l,l,o->
    。从堆栈中弹出每个元素,
    o
    首先弹出,然后是l,l,e,最后是H。您是否需要使用堆栈,因为您可以使用StringBuilder。在main方法中反转…解析传入字符串并推送每个字符。然后弹出,直到堆栈为空。确保将弹出的字符追加到每个元素其他的,那是all@Kayaman我知道如何将其反转…更重要的是如何将字符串拆分为字符以弹出它们等等。如果他要求,他自己已经考虑过这一点,那么稍加帮助也没什么错。但无论哪种方式,我都用堆栈集合给你答案,你必须用数组来实现它,我只是给了你一半。@luisdurazoa你为他写了代码,这不是“一点帮助”。@John_K下次你应该说你需要帮助什么,这会让每个人都更容易。在我的回答中,对他有用的唯一一件事就是这个词。子字符串(i,i+1)和我不明白我的答案是如何在StackOverflow策略下被否决的。