java - 我似乎找不到一个奇怪的错误

标签 java

我想做的是让这个程序读取一个数字,该数字指定有多少个单词,例如:

3 
red 
blue
green

然后以相反的顺序打印出相同的文本,所以它会是

green 
blue 
red

后跟一个空行,向服务器表明您已解决该特定问题。但我的代码中似乎有一个错误。

我尝试将单词存储在数组列表中。我使用了 for 循环将它们存储在列表中,然后以相反的顺序打印它们,我只是使用了另一个 for 循环以相反的方式从列表的末尾开始到开头。

当我从命令提示符运行程序时,它只是转到下一个命令提示符行,就好像我编译程序一样,没有错误,但是当我 做了一个测试,使用我创建的测试程序,似乎该程序读取了数字,然后打印出一个空白数组。

似乎来自服务器的单词没有存储在数组中,我不确定我做错了什么。我不是最伟大的程序员,因此我们将不胜感激任何帮助。

代码:

import java.io.*;
import java.util.*;

public class Solution
{
    public static void run(BufferedReader in, PrintWriter out)
        throws IOException
    {
        int x = Integer.parseInt(in.readLine());

        while(x != 0)
        {
            ArrayList num  = new ArrayList();

            for(int i = 0; i < num.size(); i++)
            {
                //String f = in.readLine();
                num.add(in.readLine());
            }
            //System.out.println(num);

            for(int i = num.size()-1; i > 0; i--)
            {
                out.println(num.get(i));

                //x = Integer.parseInt(in.readLine());
                System.out.println();
            }
            break;
        }
        out.flush();
    }
}

最佳答案

ArrayList num  = new ArrayList();

for(int i = 0; i < num.size(); i++)

意味着你从 0 到... 0!

for(int i = 0; i < x; i++)

会更好。

关于java - 我似乎找不到一个奇怪的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2047688/

相关文章:

java - 在 JBoss MQ 中创建队列

java - 如何重新绘制我的 JTable

java - 使用 JSON.org 解析器从 HttpClient 请求中解析 JSON

java - 如何获取文件路径?

java - Java中如何复制原始类型内存?

java - 创建Java二叉搜索树

java - 添加 JMS 信息会破坏 EhCache

java - AudioInputStream.getFrameLength 返回错误的长度

java - 在递归方法中有一个变量在每次调用后都不会重新定义自己

java - 关于 SQL 目录的问题 - 它们到底是什么?