以表格形式打印数据

时间:2013-10-10 10:34:01

标签: java

我编写的代码会打印出我从JSON网址收到的数字列表。使用了大约5个不同的网址,列表很安静,因为每个网址包含100多个数字。

我想做的是以表格形式打印每个网址,即如果有5个网址,则会有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 个答案:

答案 0 :(得分:1)

首先打印表格的标题。

URL1 URL2 URL3 URL4 URL5

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

List getJsonDataFromURL(String url){

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

在为不同的网址调用此函数后,您必须创建5 ArrayList s。让我们称他们为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 );
}