反向打印用户输入

时间:2014-12-17 18:30:14

标签: java arrays input

我需要创建一个方法,提示用户输入三个单词,然后它必须将数据存储在一个数组中。然后该方法应该反向打印三行,例如单词OVER将作为REVO出现。

我已经完成了一些但是我不知道如何让其他2行工作。实际上,只有第一个用户输入被反转。

到目前为止,这是代码;

import java.io.*;
public class Average {
    public static void main (String[] args) throws IOException {

        BufferedReader getit;
        getit = new BufferedReader
              (new InputStreamReader (System.in));


        System.out.println ("Enter first line:");
        System.out.flush ();
        String text = getit.readLine();


        while (true) {


                System.out.println (reverse(text));

                System.out.println("Enter 2nd line:");
                System.out.flush ();
                text = getit.readLine();
                System.out.println("Enter 3rd line:");
                System.out.flush ();
                text = getit.readLine();
                System.out.println("Finish");

                break;



        }

    }

    public static String reverse (String original) {

        String reversed = ""; 

        int pos = original.length() - 1;

        while (pos >= 0) {
            reversed = reversed + original.charAt(pos);
            pos -= 1;  
        }
        return reversed;
    }

}

2 个答案:

答案 0 :(得分:2)

您只需将该功能调回一次。每次收到字符串时都尝试调用它。

你正在做的是,你把第一个字符串作为输入,你的程序进入while(true)附近的循环,你打印了字符串的反向。你又拿了两个字符串。

你在哪里扭转它们?并且循环结束时的中断没有意义。

你可以删除while循环并中断并添加调用反向函数。我不是在编写任何代码,因为你可以轻松地完成它。

答案 1 :(得分:0)

每次System.out.println (reverse(text));之后写text = getit.readLine();