0

我编写的代码打印了我从 JSON url 收到的数字列表。使用了大约 5 个不同的 url,只要每个 url 包含超过 100 个数字,列表就很安静。

我想做的是以表格形式打印出每个 url,即如果有 5 个 url,将有 5 组打印结果,彼此并排,有一个庞大的列表。

这是我到目前为止使用的代码;

public static void runTimestampCheck (String url) throws IOException
{
    //String jsonString = callURL("http://localhost:8000/eem/api/v1/metrics/temperature/288");
    String jsonString = callURL(url);
    Data data = new Gson().fromJson(jsonString, Data.class);
    //System.out.println(data.getRecords());
    long previousTimestamp = 01;
    long result;
    for(Data dataRecord : data.getRecords())
    {
        if(previousTimestamp > 0)
        {
            //Compare previous to current, should be diff of 60000
            long x = (Long)dataRecord.getTimestamp();
            result = x - previousTimestamp;
            //System.out.println(result);
            if(result != 30000)
            {
                System.out.println(result);
            }
        }
        System.out.println(dataRecord.getTimestamp() + "\n");
        previousTimestamp = dataRecord.getTimestamp();
    }
}

这被称为;

    CheckTimestamp.runTimestampCheck("specific url");
    CheckTimestamp.runTimestampCheck("specific url");
    CheckTimestamp.runTimestampCheck("specific url");
    CheckTimestamp.runTimestampCheck("specific url");
    CheckTimestamp.runTimestampCheck("specific url");

正如我所说,结果是 1 个大数字列表,但如果可能的话,我希望每个 url 在其自己的行上发布结果?

任何帮助深表感谢。

4

1 回答 1

1

首先打印表格的标题。

URL1 URL2 URL3 URL4 URL5

创建一个单独的方法来获取列表中的 json 数据。

List getJsonDataFromURL(String url){

    //use Gson to fetch from url  
    // return list
}

您必须在ArrayList为不同的 url 调用此函数后创建 5 秒。让我们打电话给他们a,b,c,d,e

使用 5 个迭代器遍历列表并打印值。

Iterator<Data> aIt = a.iterator();
Iterator<Data> bIt = b.iterator();
Iterator<Data> cIt = c.iterator();
Iterator<Data> cIt = d.iterator();
Iterator<Data> cIt = e.iterator();

// assumes all the lists have the same size
while(aIt.hasNext())
{
    System.out.println(aIt.next().data +"  "+bIt.next().data+"  " cIt.next().data+" "+ dIt.next().data, +" "+eIt.next().data );
}
于 2013-10-10T10:42:54.073 回答